|
Boost Users : |
From: Eduardo Bezerra (edubez_at_[hidden])
Date: 2005-08-04 12:39:01
I'm reading the C++ Template Metaprogramming book and I'm not
understanding the following code from page 65-66:
template <class T>
struct param_type
: mpl::eval_if <
typename boost::is_scalar<T>::type
, mpl::indentity<T>
, boost::add_reference<T const>
>
{};
template <class T>
struct param_type
: mpl::eval_if <
boost::is_scalar<T>
--> ^^^^^^^^^^^^^^^^^^^^^^^ <--
, mpl::indentity<T>
, boost::add_reference<T const>
>
{};
After reading again and again the explanation I still don't get why we
don't need to use typename ....::type anymore. The text explains that
all Boost's integral metafunctions suply a nested ::value, but how it is
used in this context ?
Any help would be greatly appreciated.
Best regards,
Eduardo
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net