我试图找出这两行代码之间的区别..
我们得到的“Count”是我们的类名,C1 和 C2 是该类的对象。没有给出如何以及何时声明这些类的信息。
Count C2(C1); //Statement 1
Count C2=C1; //Statement 2
没有提供其他信息。这两行复制构造函数的调用有什么区别?如果您有答案,请详细说明。
Thanks!
从语法层面来说,第一个称为“直接初始化”,第二个称为“复制初始化”。如果Count
是类类型(即不是 typedefint
,比方说),那么两个版本都会同等地导致复制构造函数被调用。
第一个版本在任何情况下都有效,如果声明了复制构造函数,第二个版本将不起作用explicit
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)