【发布时间】:2011-12-07 18:40:00
【问题描述】:
我了解函数原型不需要与参数关联的名称。例如:
void foo(int, std::string);
我最近很想知道你可以在函数定义中做同样的事情:
void* foo(void*) { std::cerr << "Hello World!" << std::endl; }
为什么会这样?你怎么能使用未命名的参数?是否有允许这样做的原因(比如可能处理遗留接口或类似的东西)?
【问题讨论】:
标签: c++
我了解函数原型不需要与参数关联的名称。例如:
void foo(int, std::string);
我最近很想知道你可以在函数定义中做同样的事情:
void* foo(void*) { std::cerr << "Hello World!" << std::endl; }
为什么会这样?你怎么能使用未命名的参数?是否有允许这样做的原因(比如可能处理遗留接口或类似的东西)?
【问题讨论】:
标签: c++
如果您不打算使用该参数,那么这是防止编译器警告您的好方法。
这确实在满足接口的情况下最常出现。例如。您可能正在覆盖基类方法,但对参数没有用处。
【讨论】: