Erreur du compilateur C2027
utilisation de type non défini 'type'
Un type ne peut pas être utilisé tant qu’il n’est pas défini. Pour résoudre l’erreur, assurez-vous que le type est entièrement défini avant de le référencer.
Exemples
L’exemple suivant génère l’erreur C2027.
// C2027.cpp
class C;
class D {
public:
void func() {
}
};
int main() {
C *pC;
pC->func(); // C2027
D *pD;
pD->func();
}
Il est possible de déclarer un pointeur vers un type déclaré mais non défini. Mais C++ n’autorise pas une référence à un type non défini.
L’exemple suivant génère l’erreur C2027.
// C2027_b.cpp
class A;
A& CreateA();
class B;
B* CreateB();
int main() {
CreateA(); // C2027
CreateB(); // OK
}