C++ 学习 之 类的初始化与逗号运算符的联动

我们来看一个代码

cpp 复制代码
class A {
public:
	A(int x) {
		cout << "123" << endl;
	}
	A(int x, int y) {
		cout << "456" << endl;
	}

}a = (1, 2);
int main() {
	
}

这个代码的输出结果是什么?

答案是 123

因为编译器把 ( 1 , 2 ) 识别为 了逗号运算符,就是 2 ,然后调用了单参构造函数

如果代码改为

cpp 复制代码
class A {
public:
	A(int x) {
		cout << "123" << endl;
	}
	A(int x, int y) {
		cout << "456" << endl;
	}

}a (1, 2);
int main() {
	
}

那么结果才是 456

相关推荐
W.KN1 小时前
Spring 学习笔记
笔记·学习·spring
_Orch1d2 小时前
初识无监督学习-聚类算法中的K-Means算法,从原理公式到简单代码实现再到算法优化
python·学习·算法·机器学习·numpy·kmeans·聚类
Virgil1392 小时前
【DL学习笔记】计算图与自动求导
笔记·学习
amazinging5 小时前
北京-4年功能测试2年空窗-报培训班学测开-第六十六天
python·学习·面试
-Xie-11 小时前
JVM学习日记(十三)Day13
jvm·学习
sakoba12 小时前
Docker学习其二(容器卷,Docker网络,Compose)
运维·网络·学习·docker·容器·基础
Hello_Embed12 小时前
嵌入式 C 语言入门:循环结构学习笔记 —— 从语法到实用技巧
c语言·笔记·stm32·学习
im_AMBER13 小时前
学习日志25 python
开发语言·python·学习
慕y27414 小时前
Java学习第九十六部分——Eureka
java·学习·eureka
tt55555555555514 小时前
电力系统分析学习笔记(二)- 标幺值计算与变压器建模
笔记·学习·电路