cpp11 cpp17 cpp20 的区别
时间: 2023-05-27 14:05:56 浏览: 227
C++11、C++17、C++20 都是 C++ 标准的版本,它们之间的区别如下:
1. C++11:C++11 引入了许多新特性,如 lambda 表达式、右值引用、智能指针、constexpr 函数、委托构造函数、range-based for 循环、默认和删除函数、nullptr 关键字、static_assert 关键字等。
2. C++17:C++17 在 C++11 的基础上增加了一些新特性,如结构化绑定、if constexpr、折叠表达式、内联变量、constexpr if、inline namespace、容器改进等。
3. C++20:C++20 是最新的 C++ 标准,增加了许多新特性,如概念、协程、三位运算符优先级改变、初始化语句中的声明、常量表达式的改进、constinit、迭代器范围的改进、std::span、std::format 等。
总的来说,C++11、C++17、C++20 的特性都在逐步完善 C++ 语言本身和标准库,提高了 C++ 的可用性和效率,使得开发者更容易编写高质量的代码。
阅读全文