永发信息网

C++ 中return *this会调用复制构造函数吗

答案:3  悬赏:0  手机版
解决时间 2021-03-11 09:22
  • 提问者网友:几叶到寒
  • 2021-03-10 09:09
C++ 中return *this会调用复制构造函数吗
最佳答案
  • 五星知识达人网友:人间朝暮
  • 2021-03-10 10:29
return *this; 这里看是不会调用复制构造函数的,但要看你的函数是怎么定义的
T& fun()
{
return *this;
}
返回的是类的引用,因此没调用复制构造函数
T fun()
{
return *this;
}
这里就调到复制构造函数了
全部回答
  • 1楼网友:一叶十三刺
  • 2021-03-10 12:28
当然会调用复制构造函数(拷贝构造); 但如果你函数返回值写的是a & 就不会调用,理解就行了 希望能帮到你!
  • 2楼网友:走死在岁月里
  • 2021-03-10 11:35
可以做个测试例子:设置断点调试或在复制构造函数里输出句话。 技术无止境,有些细节问题不同平台、不同版本都可能有区别,动手试验比偏听更好!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯