【发布时间】:2015-03-13 18:52:30
【问题描述】:
我不明白仿函数从 std::function 继承时的语法:
class do_sth : public function< any_type (another_type) >
{
bool operator() (string s) {...}
};
我应该使用什么作为any_type 和another_type?你能给我一个从 std::function 继承的有益用法的例子吗?因为我还没有理解它?
【问题讨论】:
-
不要从
std::function继承。 -
@SebastianRedl,为什么?没有虚拟析构函数或更深层次的东西?
-
@alfC
std::function是一个值类型。从值类型继承通常不是一个好主意。缺乏虚拟析构函数和缺乏切片保护是具体问题,但更多的是哲学问题。
标签: c++ class inheritance c++11 functor