1 模板优化
模板嵌套模板时之间空格的改进
//C++11之前最后需要空格‘> >’,否则会被当做是右移操作符'>>' vector<list<int> > //OK,适用于每个版本 vector<
list<int>> //C++11
2 关键字:nullptr 和 std::nullptr_t
C++使用nullptr代替0或NULL,适用于指针
void f(int); void f(void*); f(0); //调用f(int) f(NULL); //如果NULL = 0,则调用f(int) f(
nullptr); //调用 f(void*)
在头文件< cstddef >中定义std::nullptr_t
typedef decltype(nullptr) nullptr_t;
3 关键字auto
在C++11中,可以声明一个变量/对象不用指定具体的数据类型,使用关键字auto来实现自动推导数据类型
auto i = 727; //i类型为int double f(); auto d = f(); //d类型为double vector<string> v
; auto pos = v.begin(); //pos类型为vector<string>::iterator
auto的一般使用(不能所有的数据都使用auto,因为数据类型也是我们要熟悉了解):
(1)在不确定数据类型的情况下
(2)在数据类型的名称较长的情况下
list<string> c; list<string>::iterator ite; ite = find(c.begin(), c.end(),
target); //使用auto list<string> c; auto ite = find(c.begin(). c.end(), targrt);

技术
©2019-2020 Toolsou All rights reserved,
车主无忧:为什么放弃开源Kafka?必传之作!Alibaba内部出品Redis深度笔记及源码宝典统信UOS首次公布软件适配:QQ、微信、迅雷都有了阿里开发10年技术核心总结,Springboot+Redis文档,送给努力上进的程序员python画爱心Docker容器数据卷详解(共享数据)为何华为的5G专利高居第一名,却还被高通要求缴纳专利费?Spring循环依赖三级缓存是否可以减少为二级缓存?C#中字典的排序方法面试还不会Spring?阿里P8总结的100道面试解析,让你实锤面试官