分享方式:


編譯器錯誤 C2011

'identifier': 'type' 類型重複定義

識別項已定義為 type。 檢查識別項是否重複定義。

如果您將標頭檔或類型庫多次匯入至相同檔案中,您也會收到 C2011。 若要防止在標頭檔中定義之類型的多個包含,請使用標頭檔中的 include guards 或 #pragma once 指示詞。

如果您需要尋找重新定義型別的初始宣告,您可以使用 /P 編譯器旗標來產生傳遞至編譯器的前置處理輸出。 您可以使用文字搜尋工具,在輸出檔中尋找重複定義的識別項的執行個體。

下列範例會產生 C2011,並示範修正此問題的方法:

// C2011.cpp
// compile with: /c
struct S;
union S;   // C2011
union S2;   // OK