侯捷C++ 2.0 新特性

2024-01-01 19:57:15

关键字

nullptr and std::nullptr_t

auto

一致性初始化:Uniform Initialization

11之前,初始化方法包括:小括号、大括号、赋值号,这让人困惑。基于这个原因,给他来个统一,即,任何初始化都能够使用大括号来实现。实现的方法使用另外一个新特性:初始化列表。下一个特性介绍。

// 11之前
Rect r1 = {3, 7, 30};
Rect r2(3, 7, 20);
int ia[6] = {27, 89, 20};

// 11之后
int values[] {1, 2, 3};
vector<int> v {1, 2, 3};
complex<double> c {4.0, 3.0};

初始化列表:Initializer Lists

ERROR:narrowing? ? 不允许窄化的转换?

前面的一致性初始化中的大括号会形成一个初始化列表。具体实现代码如下:

参考文章:侯捷C++八部曲笔记(四、C++2.0新特性)_2.0/3+1c++-CSDN博客

文章来源:https://blog.csdn.net/zaizai1007/article/details/135326440
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。