因为按值返回大多数时候比返回引用效率低,所以有哪些例子按值返回是有意义的还是唯一可行的方法呢?
编辑:我错误地说了我的问题.我知道对于内置类型,通过值返回通常更有效率我主要指的是返回大于指针的用户定义类型的情况.
你错过了这里的重点 - 通过引用返回并不总是有意义,也不总是合法的.通过引用返回本地会导致未定义的行为.您可以通过引用返回超出函数范围的变量,该变量可以是:
const返回const引用的getterstatic往往不是,这是没有必要在功能只是用于通过参考返回-局部变量(或具有静态存储任何变量).NRVO在实践中使得价值回报变得可行,因此,除非您有明确的指标,表明按价值返回是一个瓶颈,不要担心它.相反,担心任何暗示的语义.