C++11内容总结
大约 1 分钟
C++11 内容总结
1、关键字和语法
nullptr: 之前的NULL,是一个宏定义,代码上是的
右值引用: 非常强大;
auto:可以根据右值,推导出右值的类型,然后左边变量的类型也就已知了
nullptr:给指针专用(能够和整数进行区别)
以前用的NULL是宏定义,在代码上无法区分整数和指针地址 #define NULL 0
(都是4字节,但是毕竟逻辑意义不一样,要区分的!)
for each:可以遍历数组(底层是指针遍历),容器(底层是迭代器遍历)
for(Type val : container) => 底层就是通过指针或者迭代器来实现的
{
cout<<val<<" ";
}
右值引用:move移动语义函数和forward类型完美转发函数
模板的一个新特性:typename... A 表示可变参(类型参数)
表示参数可能会很多
2、绑定器和函数对象
function:函数对象
bind:绑定器
是C的bind1st和bind2nd+二元函数对象 =》 一元函数对象的升级
lambda表达式
3、智能指针
shared_ptr和weak_ptr
4、容器

array底层:

- Ty:类型参数,底层元素的类型
- _Size:数组的大小,固定的
5、C++语言级别支持的多线程编程
createThread(Windows)
pthread_create(linux)
clone(linux)