View Single Post
Collecting your data
|d13m0b's Avatar
Crew
Sitat av ClockWorx Vis innlegg
Har fått med meg at læreren ikke er helt med, han er dårlig til å formulere oppgaver og forelesningene hans er generelt sett dårlige. Må jo bare ta det som en lærerik opplevelse og heller lære meg de litt "bedre" praksisene på egen hånd, takk for svar skal prøve ut dette nå! Et kvikt spørsmål bare, "this ->" har jeg sett tidligere, men forstår ikke helt hva den gjør. Fungerer den slik at den alltid vil bruke det klasseobjektet som blir benyttet for øyeblikket slik at man slipper å bytte om dette?

ville for eksempel noe slikt være mulig?

Kode

void Topp::skriv() {                    //  Skriver ALLE data:
	cout << this->navn;
	cout << this->moh;
	cout << this->hoyde;
	cout << this->lengde;			
}
Ville dette skrevet ut hvert enkelt objekts informasjon hvis jeg looper gjennom alle objektene?
Vis hele sitatet...
Jepp, du har forstått korrekt: 'this' henviser til runtime objektinstansen av klassen som blir beskrevet, og er en peker. For å aksessere (verdien til) minneområdet som pekeren peker til (pekerens verdi er en minneadresse (se: Stack/Heap)) gjør man en såkalt 'dereferencing', og C++ definerer piloperatøren (->) synonymt med dereferencing av en peker.

Generelt vil

Kode

MittObjekt->ObjektMetode();
være det samme som

Kode

(*MittObjekt).ObjektMetode();