C++函数参数

C++函数支持多种参数,正确使用参数可以提高函数的灵活性。

1. 普通传值参数

这是最常见的传参方式,调用函数时将实参值复制给形参:

void func(int a, int b) {
  a++; 
  b++;
}

int x = 1, y = 2;
func(x, y); // 将x、y值复制给a、b

函数内部无法改变外部实参的值。

2. 引用传参数

使用引用参数可以让函数修改外部变量:

void increment(int &n) {
  n++;
}

int num = 5;
increment(num); // num变为6

引用参数使用&声明,函数内部操作的就是外部实参。

3. 默认参数

可以为参数指定默认值,调用时可省略该参数:

int sum(int a, int b, int c=0) {
  return a + b + c;
}

sum(1, 2); // c使用默认值0

4. 不定参数

可以使用省略号…声明不定个数的参数:

void print(int n, ...) {
  // n为固定参数,后面为不定参
}

不定参数需要特殊方式访问。

5. 数组传参

可以直接传数组,会隐式转为指针:

void func(int values[]) {
  // 使用values数组
}

理解C++的参数传递机制可以编写灵活高效的函数,合理使用参数是构造函数的关键。