E2431 Non-type template parameters cannot be of floating point, class, or void type (C++)
Go Up to Compiler Errors And Warnings (C++) Index
Non-type template parameters are restricted as to what type they may be. Floating point, class and void types are illegal. For example:
template<float U> class foo;// error: "U" cannot be of "float" type