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

相关推荐
航Hang*1 分钟前
Photoshop 图形与图像处理技术——第9章:实践训练6——滤镜特效
图像处理·笔记·学习·ui·photoshop
renhongxia112 分钟前
大型语言模型性能预测器:学习何时在混合人机-人工智能管理系统中升级
人工智能·深度学习·学习·机器学习·语言模型·自然语言处理
知识分享小能手13 分钟前
Oracle 19c入门学习教程,从入门到精通,SQL*Plus命令详解:语法、使用方法与综合案例 -知识点详解(4)
sql·学习·oracle
燃犀知不可乎骤得24 分钟前
MFC学习记录
c++·学习·mfc
星火开发设计37 分钟前
C++ 运算符全解析:算术、关系、逻辑与位运算
java·开发语言·c++·学习·位运算·知识·操作符
AI_567840 分钟前
Postman接口测试极速入门指南
开发语言·人工智能·学习·测试工具·lua
deng-c-f1 小时前
Linux C/C++ 学习日记(61):Redis(二):多种数据结构的操作指令
学习
AI_gurubar1 小时前
最新的大模型推理加速技术的学习路线是什么?
学习
qeen871 小时前
【数据结构】顺序表的详细解析及其简单通讯录实现
c语言·数据结构·学习
峥嵘life1 小时前
Android16 EDLA中GMS导入和更新
android·linux·学习