Partager via


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
}