欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C11新特性

程序员文章站 2022-07-14 08:07:10
...
右值引用&转移语义: 
消除两个对象交互时不必要的对象拷贝,节省运算存储资源,提高效率; 
能够更简洁明确地定义泛型函数。 

https://www.ibm.com/developerworks/cn/aix/library/1307_lisl_c11/


委托构造函数: 
在一个构造函数中调用另外一个构造函数,这就是委托的意味,不同的构造函数自己负责处理自己的不同情况,把最基本的构造工作委托给某个基础构造函数完成,实现分工协作。 
http://blog.csdn.net/hyqsong/article/details/51542737


final: 
显式禁止类被继承

default: 
显式实现默认构造/析构函数

nullptr: 
强类型的空指针

auto: 
自动类型推导

constexpr: 
允许将变量声明为constexpr类型让编译器来验证变量的值是否是一个常量表达式。 
声明为constexpr的变量一定是一个常量,而且必须用常量表达式初始化 
http://blog.csdn.net/kturing/article/details/45286823

noexpect: 
声明函数不能抛出任何异常,若定义了noexpect的函数抛出异常,则程序终止 
http://blog.csdn.net/zkreats/article/details/50550786

override: 
显式的在派生类中声明哪些虚函数需要重写,若未重写则编译器会报错 
http://www.cnblogs.com/xinxue/p/5471708.html

lambda表达式: 
就地编写匿名函数(闭包) 
https://www.zhihu.com/question/20125256

可变参数模板: 
可以在模板参数列表里书写任意数量类型名

模板别名: 
使用C++11的模板别名特性可以简化容器的类型声明 
eg.

template<typename T>
using NgxStdVector = std::vector<T, NgxAlloctor<T>>; // 模板别名

NgxStdVector<char> v(pool);     // 使用模板别名创建容器

上一篇: c11 decltype与auto

下一篇: C11 锁