我有一个功能func(int a, char b, void *ptr)
。第三个参数保留供内部使用,它应该是nullptr
当前版本的 a。有没有办法在函数原型而不是定义中强制执行此操作(检查并返回 EINVAL)?通过“更好的方式”,我的意思是某种新的 C++11 特性可以实现这一点。
问问题
156 次
2 回答
6
您可以将第三个参数的类型从更改void*
为nullptr_t
( #include <cstddef>
)。
于 2013-01-16T01:00:26.323 回答
-1
看起来您正在寻找默认参数值。制作你的原型func (int a, char b, void *ptr = nullptr)
,Bob 就是你的叔叔。
于 2013-01-16T00:54:15.223 回答