[SOLVED] Zerowanie zmiennych statycznych struktury
Ostatnio zmodyfikowano 2014-11-14 18:00
| stryku Temat założony przez niniejszego użytkownika | [SOLVED] Zerowanie zmiennych statycznych struktury » 2014-11-14 17:10:01 EDIT Ok, nieważne. Tak wgl da się usuwać tematy/posty? ----------------------------------------------- PRZED EDITEM Witam. Mam mniej więcej coś takiego: struct struktura{
 static size_t licznik;
 };
 
 size_t funkcjaWKtorejChemyZliczac()
 {
 struktura strukturyKtoreCosZliczaja[ 4 ];
 
 
 
 return strukturyKtoreCosZliczaja[ 0 ].licznik;
 }
 
 size_t funkcja()
 {
 
 
 return funkcjaWKtorejChemyZliczac();
 }
 
 int main()
 {
 for( size_t i = 0; i < 10; i++ )
 std::cout << funkcja();
 
 }
 
Tylko nie za bardzo wiem jak wyzerować ten licznik próbowałem struct struktura{
 static size_t licznik;
 };
 
 size_t funkcjaWKtorejChemyZliczac()
 {
 struktura strukturyKtoreCosZliczaja[ 4 ];
 
 
 
 return strukturyKtoreCosZliczaja[ 0 ].licznik;
 }
 
 size_t funkcja()
 {
 struktura().licznik = 0;
 
 
 return funkcjaWKtorejChemyZliczac();
 }
 
 int main()
 {
 for( size_t i = 0; i < 10; i++ )
 std::cout << funkcjaWKtorejChemyZliczac();
 
 }
 
Ale nie trybi. Pomoże ktoś? :) | 
|  | 
| Tomek_z_W11 | » 2014-11-14 17:26:08 size_t funkcjaWKtorejChemyZliczac(){
 struktura strukturyKtoreCosZliczaja[ 4 ];
 
 
 
 return strukturyKtoreCosZliczaja[ 0 ].licznik;
 }
 
W tej funkcji tworzysz tablice struktur. W momencie wyjścia z funkcji ta tablica znika, więc zwracasz coś co zniknie po tym jak to zwrócisz. size_t funkcja(){
 struktura().licznik = 0;
 
 
 return funkcjaWKtorejChemyZliczac();
 }
 
Co do tego fragmentu, to struktura jest jakby szablonem, żeby wyzerować licznik musisz mieć stworzony obiekt tego szablonu, na przykład w mainie. jak pod licznik tego obiektu przypiszesz 0, to wyzerujesz tylko ten konkretny licznik tego konkretnego obiektu. Pzdr. | 
|  | 
| stryku Temat założony przez niniejszego użytkownika | » 2014-11-14 18:00:32 | 
|  | 
| « 1 » |