【发布时间】:2012-02-01 01:39:48
【问题描述】:
我有一个关于 C++ 函数调用的问题。
假设我定义了一个函数,比如 foo(int a, bool b=true); 但是当我尝试调用它时。我使用 foo(3), 这个函数调用会使用 foo(int a, bool b=true) 吗? 或者这是不允许的?
谢谢
【问题讨论】:
标签: c++ parameters default-parameters
我有一个关于 C++ 函数调用的问题。
假设我定义了一个函数,比如 foo(int a, bool b=true); 但是当我尝试调用它时。我使用 foo(3), 这个函数调用会使用 foo(int a, bool b=true) 吗? 或者这是不允许的?
谢谢
【问题讨论】:
标签: c++ parameters default-parameters
这个函数调用会使用 foo(int a, bool b=true) 吗?
是的,它将使用默认参数并调用foo(3, true)。
【讨论】:
是的,它会(但仅限于 C++,而不是纯 C)。
【讨论】:
允许,因为你定义的第二个参数有默认值。
【讨论】: