Erro do Compilador C2647
'operador': não é possível desreferenciar um 'tipo1' em um 'tipo2'
O operando esquerdo de um operador de ponteiro para membro ( ->*
ou .*
) não pode ser convertido implicitamente em um tipo relacionado ao operador direito.
A amostra a seguir gera o erro C2647:
// C2647.cpp
class C {};
class D {};
int main() {
D d, *pd;
C c, *pc = 0;
int C::*pmc = 0;
pd->*pmc = 0; // C2647
d.*pmc = 0; // C2647
// OK
pc->*pmc = 0;
c.*pmc = 0;
}