【发布时间】:2012-03-09 18:19:02
【问题描述】:
将const & 作为参数传递给函数会有什么问题吗?
最近,我们将所有出现的按值传递的对象重写为通过引用传递& 或const &(如果适用)。
没有编译器错误。
应用程序是 Windows 服务,无法启动。我们没有调试版本,所以我在这里问。
【问题讨论】:
-
视情况而定。我建议你创建一个调试版本,并调试问题。
-
如果之前您通过值传递所有内容。而您只是将它们更改为引用,那么它们应该全部更改为
const&否则您将更改代码正在执行的操作。如果任何方法正在修改参数,则需要制作本地副本而不是修改原始参数(否则您正在更改代码的含义)。 -
您为什么要进行此更改?如果你有
void func(int param),你可以把它改成void func(const int &param),但是它对你有什么好处呢?
标签: c++ pass-by-reference