分享方式:


編譯器錯誤 C2001 至 C2099

此文件區段的文章會說明編譯器所產生錯誤訊息的子集。

重要

Visual Studio 編譯器及建置工具可以報告許多類型的錯誤和警告。 發現錯誤或警告後,建置工具可能會假設程式碼意圖並嘗試繼續執行,以便可以同時報告更多問題。 如果工具做的假設有誤,那麼後來的錯誤或警告可能不適用於您的專案。 當您更正專案中的問題時,務必從所報告的第一個錯誤或警告開始進行。 一個修正程式可能會讓許多後續的錯誤消失。

若要取得 Visual Studio 中特定診斷訊息的說明,請在 [輸出] 視窗中選取該訊息,然後按下 F1 鍵。 如果存在,Visual Studio 會開啟該錯誤的文件頁面。 您也可以使用頁面頂端的搜尋工具來尋找有關特定錯誤或警告的文章。 或者,在此頁面上依照目錄中的工具和型別瀏覽錯誤與警告清單。

注意

並非每個 Visual Studio 錯誤或警告都有記載。 在許多情況下,診斷訊息會提供所有可用的資訊。 若您在使用 F1 時登陸此頁面,而且您認為錯誤或警告訊息需要額外的說明,請告訴我們。 您可以使用此頁面上的意見反應按鈕,在 GitHub 提出文件問題。 如果您認為錯誤或警告有誤,或發現工具組有其他問題,請在開發人員社群網站上回報產品問題。 您也可以傳送意見反應,並在 IDE 內輸入錯誤。 在 Visual Studio 中,移至功能表列,然後選擇 [說明] > [傳送意見反應] > [回報問題],或使用 [說明] > [傳送意見反應] > [傳送建議] 提交建議。 已建立某些編譯器錯誤主題,但編譯器未發出,現在會重新導向至此頁面。

您可以在 Microsoft Learn Q&A 論壇中找到針對錯誤和警告的其他協助。 或者,在 Visual Studio C++ 開發人員社群網站上搜尋錯誤或警告號碼。 您也可以搜尋 Stack Overflow 以尋找解決方案。

如需其他說明和社群資源的連結,請參閱 Visual C++ 說明與社群

錯誤訊息

錯誤 訊息
編譯器錯誤 C2001 常數中包含新行字元
編譯器錯誤 C2002 無效的寬字元常數
編譯器錯誤 C2003 必須是 'defined id'
編譯器錯誤 C2004 必須是 'defined(id)'
編譯器錯誤 C2005 #line 必須有行號,但只找到 'token'
編譯器錯誤 C2006 'directive':必須有檔名,但只找到 'token'
編譯器錯誤 C2007 #define syntax
編譯器錯誤 C2008 'character':未預期會出現在巨集定義中
編譯器錯誤 C2009 巨集型式 'identifier' 的重複使用
編譯器錯誤 C2010 'character':巨集型式參數列表中的非預期事件
編譯器錯誤 C2011 'identifier':'type' 類型重複定義
編譯器錯誤 C2012 '<' 之後遺漏名稱
編譯器錯誤 C2013 遺漏 '>'
編譯器錯誤 C2014 前置處理器命令前不可有非空白的字元
編譯器錯誤 C2015 常數中字元太多
編譯器錯誤 C2016 C 要求結構或等位至少要有一個成員
編譯器錯誤 C2017 不合法的逸出序列
編譯器錯誤 C2018 未知的字元 '0xvalue'
編譯器錯誤 C2019 必須是前置處理器指示詞,但找到 'character'
編譯器錯誤 C2020 'member':'class' 成員重複定義
編譯器錯誤 C2021 必須是指數值,而非 'character'
編譯器錯誤 C2022 'number':於字元而言太大
編譯器錯誤 C2023 'identifier':對齊方式 (value-1) 與先前宣告不同 (value-2)
編譯器錯誤 C2024 'alignas' 屬性僅適用於變數、資料成員及標記類型
編譯器錯誤 C2025 二進位模組介面檔案無效或已損毀:'filename'
編譯器錯誤 C2026 字串太大,尾端字元已經截斷
編譯器錯誤 C2027 使用未定義的類型 'type'
編譯器錯誤 C2028 結構/等位成員必須在結構/等位內部
編譯器錯誤 C2029 (已淘汰) 'token' 左邊指定未定義的類別/結構/介面 'identifier'
編譯器錯誤 C2030 具有 'protected private' 可及性的解構函式不可以是宣告為 'sealed' 之類別的成員
編譯器錯誤 C2031 這種類型不允許具有 'accessibility' 可及性的虛擬解構函式
編譯器錯誤 C2032 'identifier':函式不能是結構/等位 'type' 的成員
編譯器錯誤 C2033 'identifier':位元欄位無法間接取值
編譯器錯誤 C2034 'identifier':位元成員的位元欄位類型太小
編譯器錯誤 C2035 這種類型不允許具有 'accessibility' 可及性的非虛擬解構函式
編譯器錯誤C2036 'identifier':未知的大小
編譯器錯誤 C2037 'operator' 的左邊指定了未定義的結構/等位 'type'
編譯器錯誤 C2038 不可以內嵌 std 命名空間
編譯器錯誤 C2039 'identifier1':不是 'identifier2' 的成員
編譯器錯誤 C2040 'operator': 'identifier1' 在間接層級中不同於 'identifier2'
編譯器錯誤 C2041 基數 'number' 的不合法數字 'character'
編譯器錯誤 C2042 signed 及 unsigned 關鍵字是互斥的
編譯器錯誤 C2043 break 的使用不合法
編譯器錯誤 C2044 continue 的使用不合法
編譯器錯誤 C2045 'identifier':已重新定義標籤
編譯器錯誤 C2046 case 的使用不合法
編譯器錯誤 C2047 default 的使用不合法
編譯器錯誤 C2048 有一個以上的 default
編譯器錯誤 C2049 'namespace-name':不可將非內嵌命名空間回報為內嵌
編譯器錯誤 C2050 switch 運算式不是整數
編譯器錯誤 C2051 case 運算式不是常數
編譯器錯誤 C2052 'type':case 運算式的類型不合法
編譯器錯誤 C2053 'identifier':寬字串不相符
編譯器錯誤 C2054 'identifier' 之後應為 '('
編譯器錯誤 C2055 必須是型式參數清單,而非類型清單
編譯器錯誤 C2056 不合法的運算式
編譯器錯誤 C2057 必須是常數運算式
編譯器錯誤 C2058 常數運算式不是整數,不能在這裡使用
編譯器錯誤 C2059 語法錯誤代碼:'token'
編譯器錯誤 C2060 語法錯誤:找到檔案結尾
編譯器錯誤 C2061 語法錯誤:識別項 'identifier'
編譯器錯誤 C2062 輸入 'type' 非預期
編譯器錯誤 C2063 'identifier':不是函式
編譯器錯誤 C2064 詞彙不等於使用 number 引數的函式
編譯器錯誤 C2065 'identifier':未宣告的識別項
編譯器錯誤 C2066 轉換成函式類型不合法
編譯器錯誤 C2067 不能將物件轉換成陣列類型
編譯器錯誤 C2068 非法使用多載函式。 遺漏引數清單?
編譯器錯誤 C2069 從 'void' 至非 'void' 的類型轉換不合法
編譯器錯誤 C2070 'type':sizeof 運算元不合法,必須是運算式或類型名稱
編譯器錯誤 C2071 'identifier':儲存類別不合法
編譯器錯誤 C2072 'identifier':函式的初始化
編譯器錯誤 C2073 (已淘汰) 'identifier':部分初始化之陣列的元素必須具有預設的建構函式
編譯器錯誤 C2074 'identifier':'type' 初始化需要大括號內的初始設定式清單
編譯器錯誤 C2075 'identifier':陣列初始化需要括以大括號的初始設定式清單
編譯器錯誤 C2076 在類型包含 'type' 的新運算式中,不得使用括以大括號的初始設定式清單
編譯器錯誤 C2077 非純量初始設定式 'identifier'
編譯器錯誤 C2078 初始設定式太多
編譯器錯誤 C2079 identifier' 使用未定義的結構/類別/等位 'type'
編譯器錯誤 C2080 'identifier':只能從單一初始設定式運算式推算 'type' 的類型
編譯器錯誤 C2081 'identifier':在型式參數清單中的名稱不合法
編譯器錯誤 C2082 型式參數 identifier' 重複定義
編譯器錯誤 C2083 不合法的結構/等位比較
編譯器錯誤 C2084 函式 'identifier' 已經有本文
編譯器錯誤 C2085 'identifier':不在型式參數清單中
編譯器錯誤 C2086 'identifier':重複定義
編譯器錯誤 C2087 'identifier':遺漏的下標
編譯器錯誤 C2088 operator':結構/類別/等位不合法
編譯器錯誤 C2089 'identifier':'type' 太大
編譯器錯誤 C2090 函式傳回陣列
編譯器錯誤 C2091 函式傳回函式
編譯器錯誤 C2092 'identifier' 陣列元素類型不可以是函式
編譯器錯誤 C2093 'identifier1':不可以使用自動變數 'identifier2' 的位址初始化
編譯器錯誤 C2094 標籤 'identifier' 未定義
編譯器錯誤 C2095 'function':實質參數具有類型 'void':參數 number
編譯器錯誤 C2096 'identifier':無法使用小括號內的初始設定式清單來初始化資料成員
編譯器錯誤 C2097 不合法的初始化
編譯器錯誤 C2098 資料成員 'identifier' 後接著不需要的語彙基元
編譯器錯誤 C2099 初始設定式不是常數

另請參閱

C/C++ 編譯器與建置工具錯誤與警告
編譯器錯誤 C2001 - C3999、C7000 - C7999