Вот как я могу условно включить конструктор class:
struct Foo
{
template<class T>
Foo( T* ptr, boost::enable_if<is_arithmetic<T> >::type* = NULL )
{}
};
Я хотел бы знать, почему мне нужно делать включение через фиктивный параметр. Почему я не могу просто написать:
struct Foo
{
template<class T>
Foo( boost::enable_if<is_arithmetic<T>, T>::type* = NULL )
{}
};