C++ · Essencial · Inglês · Técnico
this
Ponteiro implícito disponível dentro de funções membro não estáticas, que aponta para o objeto sobre o qual a função foi chamada. Em funções const, é ponteiro para const.
Onde usar
Usado para devolver *this e encadear chamadas, ou para desambiguar um membro de um parâmetro de mesmo nome. Em lambdas, [this] captura o objeto atual.
Em código
struct Builder {
int n = 0;
Builder& add(int v) {
n += v;
return *this;
}
};
Builder b; b.add(1).add(2);Exemplos
Return *this so the calls can be chained.
Devolva *this para encadear as chamadas.
Capturing this in the lambda is dangerous if the object dies first.
Capturar this na lambda é perigoso se o objeto morrer antes.
Cuidado
Em C++ this é um ponteiro, não uma referência; por isso se escreve this->x e *this.
Sinônimos
ponteiro this