所以想象我们有一个我们想要打印的mpl :: vector(例如cout)就像这样的字符串:int, string, char
。如何用boost :: mpl做这样的事情?
答案 0 :(得分:3)
制作一个仿函数并调用boost :: for_each:
struct print_class_name {
template <typename T>
void operator()( T t ) const {
std::cout << typeid(t).name() << " ";
}
};
boost::mpl::for_each< Sequence >(print_class_name());