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

相关推荐
Komorebi_99992 小时前
大模型学习day5
学习·大模型
逍遥德2 小时前
AI时代,计算机专业大学生学习指南
java·javascript·人工智能·学习·ai编程
网络与设备以及操作系统学习使用者2 小时前
直连路由优先级最高
运维·网络·学习·华为·智能路由器
逆羽飘扬4 小时前
【AI Infra面试】基础学习汇总篇
人工智能·学习
05候补工程师5 小时前
[线性代数] 判定线性相关性的“降维打击”:从基本定理到速通特殊法
经验分享·笔记·学习·线性代数·考研
太阳上的雨天5 小时前
AI学习ing~
学习·ai·ai编程
麦田里的粮仓5 小时前
文档站点生成器 - Fumadocs
学习
技术小结-李爽6 小时前
【学习】怎样把“提问题”推荐给别人
学习
sweetheart7-76 小时前
go/golang 入门学习笔记(Java/Python/C++转Go快速上手)
笔记·学习·golang·go语言
꧁꫞꯭零꯭点꯭꫞꧂6 小时前
FastAPI入门学习
学习·fastapi