c ++中的默认参数

arp*_*pit 1 c++

我是c ++的新手我对默认参数有疑问.如果有一个具有以下原型的功能

void f(int=10,int=20,int=30,int=40)
Run Code Online (Sandbox Code Playgroud)

如果通过向它传递2个参数来调用此函数,我们如何确保将这些argumnt视为第一个和第三个,而将第二个和第四个作为默认值.

Iro*_*san 6

你不能.函数的参数按顺序匹配参数.您可以使用重载而不是默认参数,如下所示:

void myFunc(int a,int b,int c,int d);
void myFunc(int a,int c) {
    myFunc(a,20,c,40);
}
Run Code Online (Sandbox Code Playgroud)

  • @Nawaz我没有在任何参数上放置默认参数.如果你想要第一个,请为第二个提供四个或两个参数. (2认同)