this pointer
Da cppreference.com.
|
|
Questa pagina è stata tradotta in modo automatico dalla versione in ineglese della wiki usando Google Translate.
La traduzione potrebbe contenere errori e termini strani. Muovi il puntatore sopra al testo per vedere la versione originale. Puoi aiutarci a correggere gli gli errori. Per ulteriori istruzioni clicca qui. |
<metanoindex/>
All'interno non statico funzione membro, contiene un puntatore all'oggetto classe da cui viene chiamata la funzione.
Original:
Inside non-static member function, holds a pointer to the class object from which the function was invoked.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Il tipo di puntatore è
this cv T* const dove T è il nome della classe e cv si riferisce alla cv specificatori della funzione viene utilizzato il puntatore in Per esempio:Original:
The type of
this pointer is cv T* const where T is the class name and cv refers to the cv specificatori of the function the pointer is used in. For example:The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
| Function signature | Type of this
|
|---|---|
void T::foo()
|
T* const this;
|
void T::foo() const
|
const T* const this;
|
void T::foo() volatile
|
volatile T* const this;
|
void T::foo() const volatile
|
const volatile T* const this;
|
Esempio
class T
{
int x;
void foo()
{
this->x = 5; // this used explicitly
x = 6; // same as this->x = 6;
}
void foo() const
{
this->x = 7; // Error: *this is constant
}
void foo ( int x )
{
// parameter x shadows the attribute with the same name
this->x