C++11有哪些新特性
时间: 2024-01-11 19:06:16 浏览: 72
C11有以下新特性:
1. _Atomic关键字:用于多线程编程,确保原子操作的正确性和一致性。
2. 线程支持:C11引入了线程库,包含了线程创建、同步、互斥、条件变量等功能。
3. _Noreturn关键字:表示函数不会返回,用于编译器优化和错误检测。
4. _Alignof和_Alignas关键字:分别用于获取类型的对齐要求和指定类型的对齐方式。
5. 泛型选择表达式:可以根据参数类型选择不同的函数实现,提高代码复用性。
6. 静态断言:用于编译期检查程序的正确性,如果断言失败,则编译失败。
7. 匿名结构体和联合体:可以不给结构体或联合体定义名称,直接定义成员变量。
8. Unicode支持:C11标准将Unicode编码支持作为标准库的一部分,包含了字符类型和字符串类型的扩展。
9. 增强的泛型宏:可以定义类似函数的宏,支持不同类型参数的宏调用。
10. 增强的for循环:支持遍历数组、链表等数据结构,使代码更加简洁易懂。
阅读全文