Boost MPL 模板列表
我想要获取类模板的列表,T1,T2,... TN 和有一个 MPL 类列表,其中每个模板都使用相同的参数进行实例化。
boost::mpl::list
不能与模板模板参数列表一起使用,只能与常规类型参数一起使用。
所以以下内容不起作用:
class A { ... };
template<template <class> class T>
struct ApplyParameterA
{
typedef T<A> Type;
}
typedef boost::mpl::transform<
boost::mpl::list<
T1, T2, T3, T4, ...
>,
ApplyParameterA<boost::mpl::_1>::Type
> TypeList;
我怎样才能让它发挥作用?
I want to take a list of class templates, T1, T2, ... TN and have a list an MPL list of classes, where each template is instantiated with the same parameter.
boost::mpl::list
cannot be used with a list of template template parameters, just regular type parameters.
So the following does not work:
class A { ... };
template<template <class> class T>
struct ApplyParameterA
{
typedef T<A> Type;
}
typedef boost::mpl::transform<
boost::mpl::list<
T1, T2, T3, T4, ...
>,
ApplyParameterA<boost::mpl::_1>::Type
> TypeList;
How can I make it work?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
你想要这样的东西:
You want something like this:
我想你想要这个:
这将
在 TypeList 中生成
I think you want this:
this will make
in TypeList