MFC 里面CString a = b,c,d;这样定义是什么意思,多谢指点了

MFC 里面CString a = b,c,d;这样定义是什么意思,多谢指点了

问题描述:

MFC 里面CString a = b,c,d;这样定义是什么意思,多谢指点了

楼上的你确定没有误人子弟?b应该是前面的一个CString对象,这句话的意思是生成a,c,d三个对象,a对象用了copy构造函数罢了

CString a = b,c,d;
就是
CString a = d;

逗号运算符,取最后一个作为表达式的值。
但是为什么这么写,就不知道了。

赋值操作符= 的优先级高于逗号。

关于运算符的优先级可以参考:

所以题目中该语句的作用是生成三个CString类型对象a,c,d。
其中a对象复制于b对象。