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++的参数传递机制可以编写灵活高效的函数,合理使用参数是构造函数的关键。