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

相关推荐
专注于大数据技术栈3 小时前
java学习--枚举(Enum)
java·学习
我命由我123454 小时前
开发中的英语积累 P19:Inspect、Hint、Feedback、Direction、Compact、Vulnerability
经验分享·笔记·学习·职场和发展·求职招聘·职场发展·学习方法
qq_12498707535 小时前
基于SpringBoot学生学习历史的选课推荐系统的设计与实现(源码+论文+部署+安装)
java·spring boot·后端·学习·毕业设计·毕设
崇山峻岭之间6 小时前
C++ Prime Plus 学习笔记033
c++·笔记·学习
暗然而日章6 小时前
C++基础:Stanford CS106L学习笔记 7 类
c++·笔记·学习
思成不止于此6 小时前
【MySQL 零基础入门】DDL 核心语法全解析:数据库与表结构操作篇
数据库·笔记·学习·mysql
学编程的闹钟6 小时前
86【CSS的模块化处理】
学习
weixin_409383126 小时前
姜丹四方向a*寻路学习记录4 不用计算起点到目的地的f 从开始计算的是角色起点四周的格子到目的地的f
学习
im_AMBER6 小时前
Leetcode 72 数组列表中的最大距离
c++·笔记·学习·算法·leetcode
FFF团团员9096 小时前
树莓派学习笔记7:局域网的建立和程序自启动
笔记·学习