matematykaszkolna.pl
informatyka Rafał: Informatyka−Programowanie − Co oznacza ten typ zmiennej? Witam Spotkałem się z takim definiowaniem tablic, zmiennych: double& ExtMapBuffer[] int& mCount Co oznacza & i jakie ma zastosowanie?
3 lut 14:14
Dziadek Mróz: & to operator zwany referencją na adres w pamięci. Np. dla Twojego ExtMapBuffer adres w pamięci to 0xb563, więc wykonując takie działanie: ExtMapBuffer == 0xb563 da wynik true Gdybyś zadeklarował tą zmienną tak, bez &: double ExtMapBuffer[] to powyższe porównanie wykonamy tak: &ExtMapBuffer == 0xb563 da wynik true
3 lut 14:37
Rafał: Studiuję sobie książke na temat OOPu w C++, teraz widzę, że referencje są trochę dalej. Dzięki za wyjaśnienie.
3 lut 14:52
kuj: &ExtMapBuffer == 0xb563 da wynik true no chyba nie
3 lut 14:52
Dziadek Mróz: W skrócie zmienna typ& to stała, read−only.
3 lut 14:53
Dziadek Mróz: #include <iostream> using namespace std; int main() { int a = 4; int& b = a; // przypisanie b adresu a, tzn a i b są tym samym od tego momentu cout << &a << " " << &b << endl; cout << a << " " << b << endl; /* 0x22fe98 0x22fe98 4 4 */ a = 6; cout << &a << " " << &b << endl; cout << a << " " << b << endl; /* 0x22fe98 0x22fe98 6 6 */ b = 7; cout << &a << " " << &b << endl; cout << a << " " << b << endl; /* 0x22fe98 0x22fe98 7 7 */ return 0; }
3 lut 15:18