Lekcja 5 Programowanie obiektowe
Ostatnio zmodyfikowano 2014-03-04 20:29
sergieus Temat założony przez niniejszego użytkownika |
Lekcja 5 Programowanie obiektowe » 2014-03-04 20:24:28 Witam mam problem ze zrozumieniem jednej linijki kodu :( #include <iostream> using namespace std;
class Klasa { public: void m( Klasa & x ) <<<<------------Co tutaj si ę dzieje ? To jest jaki ś adres klasy czy co ? { cout << this << endl; if( this == & x ) std::cout << "Uzyto tego samego obiektu" << std::endl; else std::cout << "Uzyto innego obiektu" << std::endl; } }; int main() { Klasa a, b; a.m( b ); b.m( a ); } |
|
piter990 |
» 2014-03-04 20:29:20 tutaj do metody przekazujesz zmienna przez referencje czyli nie robisz kopi zmiennej którą wprowadzasz przy wywołaniu chyba nazwałeś to "b" tylko przekazujesz zmienna w taki sposób ze jeśli metoda klasy ją zmieni to pozostanie zmieniona i w następnym wywołaniu jakiejś innej funkcji nie powrócisz do oryginału |
|
« 1 » |