分享方式:


編譯器錯誤 C2027

使用未定義的類型 'type'

除非定義類型,否則無法使用類型。 若要解決錯誤,請先確定類型已完整定義,再參考它。

範例

下列範例會產生 C2027。

// C2027.cpp
class C;
class D {
public:
   void func() {
   }
};

int main() {
   C *pC;
   pC->func();   // C2027

   D *pD;
   pD->func();
}

可以宣告已宣告但未定義型別的指標。 但是 C++ 不允許參考未定義的型別。

下列範例會產生 C2027。

// C2027_b.cpp
class A;
A& CreateA();

class B;
B* CreateB();

int main() {
   CreateA();   // C2027
   CreateB();   // OK
}