如果使用引用的目的是更改原始变量的值,为什么要使用 const 引用传递?[C++]

Why use pass by const reference if the point of using reference is to change original variable's value? [C++]

本文关键字:引用 const C++ 为什么 变量 原始 如果      更新时间:2023-10-16

C++:

例如,如果我们想更改实际变量的值,就会使用"pass-by-reference"。

那么"通过常量引用传递"有什么用呢?它说它不允许我们改变变量的值。

好的。那么为什么不首先使用"pass-by-value"呢?:/"传递值"也不会更改变量的值。它将更改临时副本的值。

那么,为什么要使用CONST参考呢?o_o?我希望你能抓住我。

请帮我消除疑虑。

我想你是说为什么要

int foo(int const& bar)

而不是

int foo (int bar)

如果这是你的问题,那么使用通过引用传递,这样就不需要复制。在上面的例子中,它是琐碎的,因为参数是int。但是,如果它是一个大的vectormap,您肯定不希望传递值,因为它会生成一个副本。

因此,如果您只想通过引用传递以避免复制,但不希望变量是可变的,那么您可以将其设为const引用。

相关文章: