gpt4 book ai didi

c++ - 关于 C++ Copy Constructor 调用的问题

转载 作者:行者123 更新时间:2023-11-30 00:57:45 26 4
gpt4 key购买 nike

我想找出这两行代码之间的区别..

我们得到的“Count”是我们的类名,C1 和 C2 是该类的对象。没有给出有关如何以及何时声明类的信息。

Count C2(C1); //Statement 1
Count C2=C1; //Statement 2

没有给出其他信息。复制构造函数的这两行调用有什么区别?如果您有答案,请详细说明。

谢谢!

最佳答案

在语法层面,第一种叫做“直接初始化”,第二种叫做“复制初始化”。如果 Count 是类类型(即不是 int 的 typedef,比如说),那么这两个版本等效地导致调用复制构造函数。

第一个版本在任何情况下都有效,如果复制构造函数声明为显式,则第二个版本无效。

关于c++ - 关于 C++ Copy Constructor 调用的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7436102/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com