小编RMH*_*157的帖子

std :: tuple到成员函数

我仍然试图摆脱元编程,我很难过.

我想做的是创建一个类/ struct/whatever,为它提供一个std :: tuple并让它根据元组中的对象类型自动生成成员函数.目标是让类派生自MessageHandler

例如

typedef std::tuple< MessageA, MessageB, MessageC > MessageSet;

template< class T >
class MessageHandler
{
  // some magic metaprogramming would "create"...
  virtual void processMsg( const MessageA& ) = 0;
  virtual void processMsg( const MessageB& ) = 0;
  virtual void processMsg( const MessageC& ) = 0;
};
Run Code Online (Sandbox Code Playgroud)

我已经读过你不能在模板中使用虚函数,但我不知道C++ 11是否仍然如此.

谢谢.

c++ templates virtual-functions variadic-templates iterable-unpacking

3
推荐指数
1
解决办法
334
查看次数