當您使用 C + + 編譯器 C2385 錯誤訊息

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

323918
本文已封存。本文係以「現狀」提供且不會再更新。
徵狀
如果您在編譯虛擬基底建構函式的 Visual C++ 程式碼可能會收到 「 C2385 」 錯誤訊息。
發生的原因
之所以發生這個問題,因為是 C + + 編譯器在 Microsoft Visual Studio.NET 中有錯誤。
解決方案
修正程式現在可以從 Microsoft,但它只用來修正本文所述的問題。因此只提供給已遭遇此特定問題的電腦。此修正程式可能會接受其他測試。因此,如果您不會嚴重影響這個問題,Microsoft 建議您等候下一個的 Visual Studio.NET Service Pack 包含此 Hotfix。

如果要立即解決這個問題,洽詢 Microsoft 技術支援部以取得此修正程式。如需 Microsoft 產品支援服務電話號碼及支援成本的相關資訊的完整清單,請造訪下列 Microsoft 網站]:注意: 在特殊情況中通常會因支援電話所產生的費用如果,可能就不收取 Microsoft 支援人員認為某特定更新程式可以解決您的問題。典型的支援成本將會套用到其他支援問題是所做不限定特定有問題的更新程式。

此修正程式的英文版具有檔案屬性 (或更新) 中如下表所列。這些檔案的日期和時間為 Coordinated Universal Time (UTC)。當您檢視檔案資訊時,會將它轉換為當地時間。若要到 UTC 與當地時間差異使用 [中日期] 和 [時間] 工具,在 [控制台] 中的 [時區] 索引標籤]。
   Date           Version       Size             File name        ---------------------------------------------------------   04-Jun-2002    13.0.9503.0   2,105,344 bytes  C1xx.dll   04-Jun-2002    13.0.9503.0   1,757,184 bytes  C2.dll				

狀況說明
Microsoft 已確認這是在本文開頭所列之 Microsoft 產品中的問題。
其他相關資訊
若要重現這個問題,編譯 Visual Studio.NET 下的面的 Microsoft Visual C++.NET 程式碼範例:
#include <stdio.h>class V{public:    V(){ printf("Just testing\n"); }};class A : virtual public V{    /* ... */ };class B : virtual public V{    /* ... */ };class C : public A, public B{    void DoNothing(const V&)    {        ;    }    void VC7_Ambiguity(void)    {        DoNothing(V());    }};int main(void){    C c;    return 0;}				
當您在編譯這個程式碼在 Visual Studio.NET 下列輸出會顯示在 [輸出] 視窗:
x3.cppx3.cpp(29) : error C2385: ambiguous access of 'V' in 'C'        could be the 'V' in base 'V'        or the 'V' in base 'V'x3.cpp(29) : error C2065: 'V' : undeclared identifier					
Visual C++ 編譯器

警告:本文已自動翻譯

內容

文章識別碼:323918 - 最後檢閱時間:10/26/2013 17:13:47 - 修訂: 1.2

  • Microsoft Visual C++ .NET 2002 Standard Edition
  • kbnosurvey kbarchive kbmt kbbug kbcompiler kbfix kbqfe KB323918 KbMtzh
意見反應