【发布时间】:2019-05-20 13:52:48
【问题描述】:
鉴于我的函数将函数指针作为参数
void call_func(std::function<void()>func) {
func();
}
最直接的方法是
void no_op() {
;
}
void call_func(std::function<void()>func = no_op) {
func();
}
有没有更简洁的方法可以避免创建字面上无用的no_op 函数?
【问题讨论】:
-
使用
lambda? -
或者使用
nullptr,把body改成if (func) func();?
标签: c++ functional-programming function-pointers