Here is how I can conditionally enable a constructor of a class :
struct Foo
{
template<class T>
Foo( T* ptr, boost::enable_if<is_arithmetic<T> >::type* = NULL )
{}
};
我愿知道,为什么我需要通过 du泥参数这样做。 为什么我不能仅仅写:
struct Foo
{
template<class T>
Foo( boost::enable_if<is_arithmetic<T>, T>::type* = NULL )
{}
};