有
struct Person {
string name;
};
Person* p = ...
假设没有运算符被重载。
哪个更有效(如果有的话)?
(*p).name
对比 p->name
在我脑后的某个地方,我听到一些铃声响起,*
解引用运算符可能会创建对象的临时副本;这是真的?
这个问题的背景是这样的情况:
Person& Person::someFunction(){
...
return *this;
}
我开始怀疑,如果将结果更改为Person*
和最后一行简单地return this
会产生任何影响(在性能方面)?