C ++:
例如,如果我们想要更改实际变量的值,则使用“按引用传递”。
那么“通过const引用”有什么用?它说它不允许我们改变变量的值。
行。那么为什么不首先使用“按值传递”呢? :/“Pass By Value”也不会改变变量的值。它将改变临时副本的值。
那么为什么要使用CONST参考? O_O?我希望你能帮助我。
请帮我澄清我的疑问。
答案 0 :(得分:4)
我认为你的意思是
int foo(int const& bar)
而不是
int foo (int bar)
如果这是您的问题,则使用传递参考,以便不需要制作副本。在上面的例子中,它是微不足道的,因为参数是int
。但如果它是一个很大的vector
或map
,你肯定不想通过值传递,因为它会复制。
因此,如果您只想通过引用传递以避免复制,但又不希望变量是可变的,那么您可以将其作为const
引用。