Например, так я бы написал его, и он компилируется и работает отлично:
template<typename T> struct is_pointer<T*> {
static const bool value = true;
}
Тогда почему некоторые люди пишут менее очевидные
template<typename T> struct is_pointer<T*> {
enum { value = true };
}
вместо этого? Это связано только с тем, что переменная static const
использует байты памяти, тогда как enum
не?