'語言功能' 需要編譯器旗標 '編譯器選項'
備註
語言功能需要錯誤訊息中顯示的編譯器選項。
要在 Visual Studio 中設定 C++ 語言標準:
- 開啟 屬性頁 對話方塊以進行專案設定。
- 選擇 配置屬性>C/C++>Language。
- 對於 C++ 語言標準,選擇錯誤訊息所指定的標準,然後選擇 確定 或 套用。 例如,當錯誤指定 時,請選取
/std:c++17。
對於命令列編譯,請在指令中 cl 加入指定的選項。
Example
以下範例產生 C2429:語言功能「nested-namespace-definition」在編譯器使用預設 C++14 語言標準時,需要編譯器旗標 '/std:c++17' 。 巢狀命名空間定義需要 C++17 或更新版本。 若要修正此錯誤,請使用 /std:c++17 或更新版本的選項進行編譯,或分別定義每個命名空間。
// C2429.cpp
namespace a::b { int i; } // C2429 when the compiler uses C++14.
// Use /std:c++17 or later, or define each namespace as follows:
// namespace a { namespace b { int i; }}
int main() {
a::b::i = 2;
}