gpt4 book ai didi

c++ - 在指定其他参数时使用前导参数的默认值

转载 作者:行者123 更新时间:2023-11-28 02:42:37 25 4
gpt4 key购买 nike

我想知道如何跳过覆盖 C++ 函数中的参数。例如,看下面的函数,如果 output 有 1 个参数,你可以直接调用它而不发送任何参数,比如 output();

这将输出 5,因为 xor 的默认值为 5。但是,如果我想覆盖“vor”,并将 xor 保留为其默认值,我该怎么做?

输出(NULL, 20);

上面没有工作,它只是将 xor 初始化为 0。

void output(int xor = 5, int vor = 15) {
cout << xor << " " << vor << endl;
}

int main()
{
output(10, 20);
}

最佳答案

如果你想覆盖第二个默认参数,那么你必须指定第一个参数。

函数的可能调用如下

output();         // corresponds to output( 5, 15 );
output( x ); // corresponds to output( x, 15 );
output( x, y ); // corresponds to output( x, y );

其中 x 和 y 是一些任意参数。

关于c++ - 在指定其他参数时使用前导参数的默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25463607/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com