是的,C++中引用传递可以改变原值。当我们将一个变量通过引用传递给函数时,函数可以直接修改该变量的值,而不是创建一个副本。因此,对引用传递的参数的修改会影响到原始变量的值。下面是一个简单的示例:
#include <iostream>
void increment(int& num) {
num++;
}
int main() {
int value = 10;
std::cout << "Original value: " << value << std::endl;
increment(value);
std::cout << "Updated value: " << value << std::endl;
return 0;
}
在这个例子中,increment
函数接受一个整数的引用,并将其值增加1。当我们将value
变量通过引用传递给increment
函数时,函数会直接修改value
的值,因此在输出时value
的值被更新为11。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读:c++引用传递如何避免循环引用