
Hi All, I have a doubt regarding the arguments to the mpl::transform metafunction. In the MPL book (page 42), the mpl::transform is presented as follows: template <class Sequence1, class Sequence2, class BinaryOperation> struct transform; Here mpl::transform takes 2 sequences and a binary operation and it results in a sequence. But in a later portion of the book (page 124), while discussing about sequence building algorithms, the following is presented: typedef mpl::vector_c<int, 1, 2, 3> v123; typedef mpl::plus<_1, mpl::int_<5> > add5; typedef mpl::transform<v123, add5>::type v678; Here mpl::transform takes 1 sequence and a unary operation and it results in a sequence. How does mpl::transform supports such different arguments? Rgds, anna