1. A a;
A b = a;
2. A a,b;
b = a;
这两个operator =?
之间有什么区别第一个需要原型吗?
答案 0 :(得分:9)
在1中,a
是默认构造的,b
是从a
复制构造的。没有任何作业。
在2中,默认构建a
和b
,然后将a
的值分配给b
。
答案 1 :(得分:1)
这两个都不是原型,而是创建类A的对象。在第一种情况下,语句A b = a;
调用A
的复制构造函数,其中第二种情况A a,b
使用A
的默认构造函数,用于创建对象,然后将A
的赋值运算符用于b=a
。