11
template<typename T, T Min>
class LowerBoundedType {};
template<typename T> class vectorelement {};
template<> class vectorelement<Categorical> { typedef LowerBoundedType<double, 0.0> type; };
con l'errore:modello fallisce la compilazione: 'doppio' non è un tipo valido per un modello costante di parametri
error: 'double' is not a valid type for a template constant parameter
Non ho la bozza su di me, C++ 0x consente qualsiasi tipo numerico? – GManNickG
@GMan: Ricordo che è stato proposto di consentire qualsiasi tipo numerico, ma N3092 §14.3.2/1 dice ancora "espressione integrale costante", quindi non sembra. –
Non so perché questa regola sia una buona idea. –