gpt4 book ai didi

c++ - 为什么赋值运算符一开始就返回任何东西?

转载 作者:行者123 更新时间:2023-11-27 22:46:29 25 4
gpt4 key购买 nike

我知道“+”运算符必须返回一些东西,这对我来说很有意义。

但是我不明白的是为什么我们在重载“=”运算符时返回一个对象。例如,请看以下内容:

const Scene& Scene::operator=(const Scene &source){
if(this != &source){
count = source.count
}
return *this;
}

光用这个不就可以达到同样的效果吗?

void Scene::operator=(const Scene &source){
if(this != &source){
count = source.count
}
}

最佳答案

= 运算符的语义是您可以链式赋值:

a = b = c;

你必须返回一个对象才有意义。

关于c++ - 为什么赋值运算符一开始就返回任何东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42285143/

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