【发布时间】:2012-09-10 13:59:38
【问题描述】:
示例:我有一个名为 Class 的类,它有一个数据成员 std::string m_name 和 int m_value。
为了避免不必要的复制,我这样做了。
const std::string& Class::name() const;
为了使函数保持一致,对原始类型也可以接受吗?
const int& Class::value() const;
【问题讨论】:
-
是什么让您认为您需要避免不必要的复制?
-
基元在使用引用方面并没有任何优势,但您可能还是会得到 RVO。
-
@TonyTheLion:想象一下:c 类; std::cout
-
老实说,我不明白你为什么会认为这甚至会带来问题?!!如果那里有副本,您认为问题是什么? (假设甚至有一个副本,编译器在适当的情况下非常擅长复制省略)
标签: c++