Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako používať tento ukazovateľ v C + +

A + + C programe , ak vytvoríte objekt A a triedy X , potom môžete získať adresu pomocou " tento " ukazovateľ . Adresa je k dispozícii ako lokálne premenné v non - statické členmi funkcií X , a jeho typ je const X * . " Tento " ukazovateľ funguje, pretože C + + vytvorí inštancia svojich dátových členov , a to udržiava jednu kópiu každej členské funkcie . Veci , ktoré budete potrebovať
Advanced C + + skill
C + + kompilátor s IDE , ako Visual Studio 2008
Zobraziť ďalšie inštrukcie Cestuj 1

Použite " tento " ukazovateľ zistiť umiestnenie inštancie triedy . Ako každý ukazovateľ , ukladá adresu . Členské funkcie getAddress ( ) z C + + triedy X sa vracia na adresu danú inštanciu triedy X :
triedy X {
verejnosť :
X * const getAddress ( ) const {
vrátiť tento ,
} ;
2

Prístup funkcie členov alebo člen dát v rámci jedného členského trieda funkcií s " to " kľúčové slovo a - operátor " > " . Nižšie uvedený príklad môže pracovať bez " this - > . " Ale v prípade , že knižnica matica má nadradenej triedy s rovnakými menami členov , " this - > " je jasné , že to , čo je vyvolaná patrí k súčasnej triede , a nie jeho rodič :
trieda Matrix {
int riadky , stĺpce ,
verejnosť :
Matrix ( ) : riadky ( 0 ) , stĺpcov ( 0 ) {
this - > Init ( ) ; }
~ Matrix ( ) ;
int GetRows ( ) const {
vrátiť this - > riadky ;
}
súkromia:
void init ( ) ; }
,

3

Štúdia triedu , ktorá má preťažovanie operátorov a štúdium využitie tohto . Nasledujúci fragment kódu ukazuje , ako je možné predefinovať :
const X * this - > operátor ( ) {
vrátiť to ,
}


Najnovšie články