Partilhar via


Erro do compilador C2663

'função' : sobrecargas numéricas não têm conversões legais para 'este' ponteiro

Observações

O compilador não pôde converter this para nenhuma das versões sobrecarregadas da função membro.

Este erro pode ser causado pela invocação de uma função não-membroconst em um const objeto. Possíveis resoluções:

  1. Remova o const da declaração de objeto.

  2. Adicione const a uma das sobrecargas de função de membro.

Example

O exemplo a seguir gera C2663:

// C2663.cpp
struct C {
   void f() volatile {}
   void f() {}
};

struct D {
   void f() volatile;
   void f() const {}
};

const C *pcc;
const D *pcd;

int main() {
   pcc->f();    // C2663
   pcd->f();    // OK
}