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