c++ 函数如何给引用参数给默认值
时间: 2024-09-13 13:03:04 浏览: 14
C++允许函数参数具有默认值,这意味着当调用函数时如果没有提供该参数的值,函数会使用预定义的默认值。对于引用类型的参数,你可以直接初始化其引用,就像初始化变量一样。例如:
```cpp
// 定义一个接受引用参数并带有一个默认值的函数
void functionWithDefaultRef(int& ref, int defaultValue = 0) {
// 如果未提供参数值,ref将是默认值
if (ref == defaultValue) {
ref = 42; // 可以在这里改变默认值
} else {
// 使用传入的实际值
ref = someValue;
}
}
int main() {
int myInt = 0;
// 第一次调用,不提供值,ref将保持默认值0
functionWithDefaultRef(myInt);
std::cout << "myInt after first call: " << myInt << std::endl;
// 第二次调用,提供一个值,ref将被更新
functionWithDefaultRef(myInt, 10);
std::cout << "myInt after second call: " << myInt << std::endl;
return 0;
}
```
在这个例子中,`functionWithDefaultRef`函数的`ref`参数有默认值0。如果传递给它的不是一个已经初始化的新引用,那么它会被设置为这个默认值。