C++:列表初始化

一:C++98

在c++98中可以用花括号{}对数组和结构体进行初始化,比如:

cpp 复制代码
struct A
{
	int a;
	int b;
};
int main() {
	int a[3] = { 1,2,3 };
	A b = { 1,2 };
	return 0;
}

二:C++11

c++11中扩大了使用范围,所以自定义类型也可以使用了。使用初始化列表可以用等号,也可以不用。比如:

cpp 复制代码
class A
{public:
	A(int a1,int b1)
		:a(a1)
		,b(b1)
	{}
private:
	int a;
	int b;
};
int main() {
	int c[3]{ 1,2,3 };
	//下面这种就调用构造函数初始化
	A aa = { 1,2 };
	A bb  { 5,6 };
	return 0;
}

祝大家一起进步!

相关推荐
BizzZ_2 小时前
C++(22)——类型转换和IO流
开发语言·c++
晊晌_h2 小时前
嵌入式从0到精通——数据结构总结[特殊字符]
数据结构·算法·排序算法
我找到地球的支点啦3 小时前
Matlab系列(009) 一CRC循环冗余校验详解
开发语言·数据结构·算法·matlab·信息与通信
罗西的思考3 小时前
【OpenClaw具身硬件】ZeroClaw 源码阅读笔记(3)--- RAG
人工智能·算法·机器学习
浪里镖客4 小时前
位姿转换矩阵写法-个人习惯(计算机理解其实是相反的)
线性代数·算法·矩阵
青梅味猪大肠4 小时前
【深入浅出C++】为什么虚表指针可以解决菱形继承
开发语言·c++
Lhan.zzZ5 小时前
QML 组件库:VS2022 + Qt 静态库方案
开发语言·c++·qt·visual studio
小白羊丨7 小时前
如何诊断 Prompt 模板导致的效果下降?
人工智能·算法·prompt
一木 之林8 小时前
五、C++ 新特性、关键字与编译原理(进阶)(二)
java·开发语言·c++
OPEN-F8 小时前
C++11/14新特性精讲:移动语义与智能指针实战
开发语言·c++·算法