在 c++++ 中,参数传递有两种方式:按值传递:创建参数副本,函数修改副本不影响原参数。按引用传递:传递参数引用,函数修改引用会影响原参数。
C++ 函数参数的传递方式
在 C++ 中,函数参数可以以以下两种方式传递给函数:
- 按值传递
- 按引用传递
按值传递
按值传递会将参数的副本传递给函数,这意味着函数对副本所做的任何更改都不会影响原始参数。
语法:
void foo(int x);
在此示例中,x
是按值传递给 foo()
函数的。
按引用传递
按引用传递会将参数的引用传递给函数,这意味着函数对引用所做的任何更改也会反映在原始参数中。
语法:
void foo(int &x);
在此示例中,x
是按引用传递给 foo()
函数的。
实战案例:
考虑以下代码:
// 按引用传递参数 void swap(int &a, int &b) { int temp = a; a = b; b = temp; } int main() { int x = 1; int y = 2; swap(x, y); std::cout << "x: " << x << std::endl; // 输出: 2 std::cout << "y: " << y << std::endl; // 输出: 1 return 0; }