首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> C++ >> 關於C++

VS2010 編譯器對 C++11 支持度測試

     編輯:關於C++

測試環境

  • VS2010 (cl 16.xx) 配合 .NET Framework 更新。
  • 對比 g++ 4.9.3(完全支持 C++11)。

測試項目與結果

特性VS2010 clg++ 4.9.3
Lambda 表達式✅ 支持✅ 支持
auto 類型推導✅ 支持✅ 支持
範圍 for 循環❌ 不支持✅ 支持
原始字符串字面量 R\"(...)\"❌ 不支持✅ 支持
std::function / std::bind✅ 支持✅ 支持
右值引用 &&✅ 部分支持✅ 完全支持
constexpr❌ 不支持✅ 支持

測試代碼片段

// Lambda + auto + std::function
#include 
#include 
std::function getLambda() {
    return [](int x, int y) { return x * y; };
}
int main() {
    auto f = getLambda();
    std::cout << f(6, 7) << std::endl; // 42
    // 原始字符串測試
    // std::cout << R"delim(a b c)delim"; // VS2010 編譯失敗
    return 0;
}

結論

VS2010 部分支持 C++11 核心語言特性,但標準庫與新語法(範圍 for、原始字符串、constexpr 等)缺失。建議需完整 C++11 時使用 g++/Clang 或升級 VS 版本。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved