ExpertiDict

C++ · Essencial · Inglês · Técnico

this

ðɪspalavra-chave

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

Veja também

Todos os termos de C++