In een C + + -programma , als je object maken Een van de klasse X , kunt u moet u het adres van een door de " dit " pointer . Het adres is als een lokale variabele in de niet - statische lid functie van X , en het type const X * . Het "dit" pointer werkt omdat C + + creëert exemplaren van zijn gegevens leden , en het houdt een exemplaar van elk lid functie . Wat je Need Geavanceerd C + + vaardigheid C + + compiler met IDE , zoals Visual Studio 2008 Toon Meer Aanwijzingen 1 Gebruik de " dit " pointer naar ontdek de locatie van een klasse-instantie . Zoals elke wijzer , het slaat een adres . Lid functie getAddress ( ) van C + + -klasse X geeft het adres van een bepaalde instantie van de klasse X : class X { publiek : X * const getAddress ( ) const { terugsturen , } ; Access lidfuncties 2 of lid gegevens in een klasse lid functie met de " dit " keyword en de " - > " operator . Het voorbeeld hieronder kan werken zonder ' dit - > . " Maar als de matrix bibliotheek heeft een ouder klasse met dezelfde namen van leden , " dit - > ' maakt duidelijk dat wat wordt ingeroepen behoort tot de huidige klasse , en niet de moedermaatschappij : klasse Matrix { int rijen , cols ; publiek : Matrix ( ) : rijen ( 0 ) , cols ( 0 ) { this- > Init ( ) ; } ~ Matrix ( ) ; < br > int GetRows ( ) const { terugkeren this- > rijen ; } prive : void Init ( ) ; } ; < br > 3 Bestudeer een klasse die heeft exploitant overbelasting en bestuderen het gebruik van deze . Het volgende stukje code laat zien hoe het kan worden geherdefinieerd : const X * this- > operator ( ) { terugsturen ; } < br >
|