C++ 花括号 { } 初始化总结

news/2024/10/18 7:54:42/

在C++11及以后的版本中,花括号{}语法在不同语境下有不同的用法,下面总结使用{}的常见场景:

1 列表初始化

List Initialization
{}可以使用列表初始化的方式初始化对象,包括内置类型,数组,容器等。如:

int x = {5};            // x被初始化为5
std::vector<int> v = {1, 2, 3};  // 用三个元素初始化一个数组
int arr[] = {1, 2, 3};  // 用三个元素初始化一个数组

列表初始化确保初始化是充分定义的。

2 值初始化

Value Initialization
在某些情况下,{}会用零或者默认值来初始化一个对象,如:

int x{};       // x被初始化为0
double d{};    // x被初始化为0

对于没有初始化构造函数的对象,可以使用值初始化的方式。

3 空初始化

Empty Initialization
在某些情况下,{}会将对象初始化为空,如:

std::string s{};      // 初始化一个空字符串
std::vector<int> v{}; // 初始化一个空容器
char arr[10]{}; //初始化一个空数组

4 指针的空初始化

Empty Initialization of Pointers
{}可以将指针初始化为nullptr,表示其暂时不指向任何对象。

int* ptr{};         // 将指针初始化为nullptr
std::shared_ptr<int> sp{};  // 将共享指针初始化为nullptr

http://www.ppmy.cn/news/589272.html

相关文章

css设置字体

font-family: Mac OS的一些&#xff1a; 华文细黑&#xff1a;STHeiti Light [STXihei] 华文黑体&#xff1a;STHeiti 华文楷体&#xff1a;STKaiti 华文宋体&#xff1a;STSong 华文仿宋&#xff1a;STFangsong 儷黑 Pro&#xff1a;LiHei Pro Medium 儷宋 Pro&…

latex字体设置

以前使用CJK进行中文的排版&#xff0c;需要自己生成字体库&#xff0c;近日&#xff0c;出现了XeTeX&#xff0c;可以比较好的解决中文字体问题&#xff0c;不需要额外生成LaTeX字体库&#xff0c;直接使用计算机系统里的字体&#xff0c;本文以在Linux下为例说明XeTeX的使用。…

python哪个字体好看_Python实现对比不同字体中的同一字符的显示效果

有人在 opensuse 中文论坛询问他的输入法打出的「妩媚」的「妩」字为什么显示成「女」「元」。怀疑是字体的问题&#xff0c;于是空闲时用好友写的 python-fontconfig 配合 pillow (pil 的一个 fork)写了个脚本&#xff0c;使用系统上所有包含这个「妩」字的字体来显示这个字&a…

常规英文字体 电商_电商设计中常见的中英字体的应用

但是作为艺术字体,每一个设计师都可以通过自己的创作来设计一套完整的字体,除了中文之外,还有英文字体。中文字体相对比较难些,要有横竖撇捺,偏旁部首,结构处理等,而英文字体只有26个字母即可创作一套字体,所以说,中英文加在一起,字体数量是非常庞大的。 常见的中文字…

linux 安装字体 注册表,如何安装字体,如何安装字体?

导航:网站首页 > 如何安装字体,如何安装字体? 如何安装字体,如何安装字体?,有知道的吗?求大神们来解答一下呀,谢谢了 匿名网友: 不管你应用的是哪个版本的windows系统,安装方法都一样: 第一步:打开“控制面版”,然后在里边找到“字体”,双击这个图标,这时你看到的…

网页字体使用探究

探究 在 CSS3 之前&#xff0c;web 设计师必须使用已在用户计算机上安装好的字体。那个时候&#xff0c;当我们在网页中指定字体后&#xff0c;浏览器对网页进行解析时&#xff0c;会去系统中去查找我们指定的字体&#xff0c;如果找不到&#xff0c;那就只能使用浏览器默认的…

html 字体思源_CSS font-family 各字体一览表

windows常见内置中文字体 字体中文名字体英文名 宋体 SimSun(浏览器默认) 黑体 SimHei 微软雅黑 Microsoft Yahei 微软正黑体 Microsoft JhengHei 楷体 KaiTi 新宋体 …

字体版权列表

http://zenozeng.github.io/Free-Chinese-Fonts/ Fork me on GitHub Family: 黑体宋体楷体仿宋其他 License: GPLSIL文鼎公众授权CCApache Tag: 可商用可嵌入PDF 字体名称 授权 可否商用 可否嵌入 PDF 备注思源黑体 SIL 可 可 Github Repo 文泉驿微米黑 Apache2.0 or GPL…