是的,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。