共用方式為


編譯器錯誤 C2429

'language feature' 需要編譯器旗標 'compiler option'

語言功能需要特定的編譯程式選項來支援。

錯誤 C2429:語言功能 'nested-namespace-definition' 需要編譯程式 旗標 '/std:c++17' ,如果您嘗試定義 複合命名空間,該命名空間包含一或多個範圍巢狀命名空間名稱,從 Visual Studio 2015 Update 5 開始。 (在 Visual Studio 2017 15.3 版中 /std:c++latest ,需要參數。C++17 之前,C++不允許複合命名空間定義。 指定編譯程式選項時 /std:c++17 ,編譯程式支援複合命名空間定義:

// C2429a.cpp
namespace a::b { int i; } // C2429 starting in Visual Studio 2015 Update 3.
                          // Use /std:c++17 to fix, or do this:
// namespace a { namespace b { int i; }}

int main() {
   a::b::i = 2;
}