如何以“无序”方式(相对于函数声明)传递函数自变量?

时间:2019-02-10 19:34:17

标签: c++ function variables arguments unordered

我真的不知道该如何措辞或很好地解释这个问题,我认为这是一个简单的问题,但我只是无法在线找到答案。

我想在我的(C ++)函数中“跳过”某些参数。下面的示例:

void func(int a=1, int b=2, int c=3, int d=5) {
    // Do stuff
}

int main(void)
{
    func();
}

例如,如何传递使用其他变量默认参数(仅传递d的参数)将d设置为4的值? 像这样:

void func(int a=1, int b=2, int c=3, int d=5) {
    // Do stuff
}

int main(void)
{
    func(d=4);
}

我尝试了上面的代码,但没有按预期工作,但是我想您明白了,如何在不影响其他所有变量的情况下将变量设置为某些变量?

不想要想要的例子:

void func(int a=1, int b=2, int c=3, int d=5) {
    // Do stuff
}

int main(void)
{
    func(1, 2, 3, 4);
}

有任何建议/答案吗?我记得我曾经在Python中做过这样的事情,但是我不知道如何在C ++中做到这一点。

0 个答案:

没有答案