【发布时间】:2015-07-24 21:46:32
【问题描述】:
我知道最好将 const String 引用作为参数传递给方法。
但是,如果我只需要在代码中使用字符串作为常量,那么引用它是否更好?获得对它的引用不只是开销吗? 我可以在我们的代码库的许多地方看到这一点,我试图理解为什么这是可取的。
string bar = "test";
const string& data = "FOO_" + bar; //why is this better than const string data?
insert(data)
函数insert接受一个引用,
void insert(const string& data)
同样的问题也适用于以同样方式使用的任何 const 对象。
谢谢!
【问题讨论】:
-
也许我疯了,但我认为
const string & data = "FOO_" + bar;不起作用。 -
@QuestionC 为什么不起作用?
-
一个 const 引用很少有任何开销。编译器会知道优化它。