Erreur du compilateur C2681
'type' : type d’expression non valide pour le nom
Un opérateur de cast a essayé de convertir à partir d’un type non valide. Par exemple, si vous utilisez l’opérateur dynamic_cast pour convertir une expression en type de pointeur, l’expression source doit être un pointeur.
L’exemple suivant génère l’erreur C2681 :
// C2681.cpp
class A { virtual void f(); };
void g(int i) {
A* pa;
pa = dynamic_cast<A*>(i); // C2681
}