Boost :: MPL Vector и For_Each: как напечатать avector в виде кортежа? - PullRequest
3 голосов
/ 05 декабря 2011

Представьте, что у нас есть mpl :: vector, который мы хотим напечатать (например, cout) в виде строки: int, string, char. Как это сделать с boost :: mpl?

1 Ответ

3 голосов
/ 05 декабря 2011

Создайте функтор и вызовите 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());
...