您现在的位置是:主页 > news > 动态网站开发实验背景/百度手机助手app免费下载
动态网站开发实验背景/百度手机助手app免费下载
admin2025/5/24 0:23:31【news】
简介动态网站开发实验背景,百度手机助手app免费下载,互联网技术的特征,深圳地铁建设集团网站空指针 typedef decltype(nullptr) nullptr_t; C11/14新增关键字“nullptr”,解决NULL存在的缺陷(#define NULL 0 实际上是一个整数,而不是真正的指针,有时候会造成语义混淆),nullptr并不是指针,而是一个…
空指针
typedef decltype(nullptr) nullptr_t;
C++11/14新增关键字“nullptr”,解决NULL存在的缺陷(#define NULL 0 实际上是一个整数,而不是真正的指针,有时候会造成语义混淆),nullptr并不是指针,而是一个类型为nullptr_t的编译期常量对象实例
初始化
统一使用{}初始化变量,称为“列表初始化”。例如:
int x{1};
vector<int> c{1,1};
引入新式for循环
for (auto x : a) {}
for (const auto& x : v) {}
声明元素类型是使用auto将推导出类型,有拷贝代价,也不能修改元素,所以可以为auto添加修饰,使用const auto&/auto &&避免拷贝,或者auto&以修改元素的值。在循环中不可以变动容器删减,否则会导致遍历的迭代器失效。
函数声明
C++11/14增加了一种新的函数语法,允许返回值类型后置,使用了auto/decltype的类型推导能力,基本形式:
auto func(...) -> type {...}
这种方式有什么好处呢?举个例子:
template<typename T, typename U>
auto aaa(T t, U u) -> decltype (t + u)
{ return t + u;}
函数aaa是一个简单的模板函数,但他的返回值类型无法用传统的语法声明,因为返回值类型必须由参数t和u决定,而函数名之前这两个参数还未定义。