函数参数已在函数声明C ++中初始化

时间:2010-02-11 15:52:14

标签: c++ function parameters

所以这是我在函数声明中的问题,有一个参数,它已经初始化为某个值。调用此函数并使用该默认值的过程是什么,或者它只是一种记录代码的方法,告诉其他程序员您希望它们用作参数的值?谢谢。

enum File
{
    XML = 0,
    PDF = 1,
};

Char *SetSection(const File = XML);

6 个答案:

答案 0 :(得分:4)

如果我正确理解了您的问题,只需调用SetSection而不使用参数即可。

SetSection();

以上调用被翻译(缺少更好的术语):

SetSection(XML);

答案 1 :(得分:3)

这意味着可以在没有参数的情况下调用该函数,在这种情况下,将使用默认值XML。

答案 2 :(得分:2)

在这种情况下,Filedefault argument。不带参数调用SetSection()会将File参数设置为声明中指定的默认值。

答案 3 :(得分:1)

如果你打电话

SetSection();

它将调用SetSection(XML)。 这就是可选参数必须位于所有参数末尾的原因。如果您没有提供足够的参数,它将使用默认值。

答案 4 :(得分:0)

XML是标准参数。 您可以使用SetSection();调用它(但SetSection(XML)SetSection(PDF)也有效。)

答案 5 :(得分:0)

您在声明中看到的是默认参数值。

如果您致电SetSection();,则与致电SetSection(XML);

相同

您也可以调用SetSelection(PDF);或使用任何其他有效参数来覆盖默认值。

您可能还会看到增量开发的结果,该开发的函数没有参数,并且调用遍布代码的函数。然后引入了替代文件类型的PDF,但原型被更改为具有默认值,这意味着不必更改现有的调用站点。