So imagine we had a mpl::vector we want to print (cout for example) it as such string: int, string, char
. How to do such thing with boost::mpl?
Make a functor and call 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());
来源:https://stackoverflow.com/questions/8386494/boostmpl-vector-and-for-each-how-to-print-avector-as-a-tuple