Defining an Inner class member function template with a (non type) enum argument
问题 I'm having difficulty defining and specializing a member function update() of an inner class Outer<T1>::Inner that is templated on a non-type (enum) argument. #include <cstdlib> template<typename T1> struct Outer { struct Inner { enum Type{ A , B , C }; template<Type T2> void update(); }; }; // Definition template<typename T1> template<Outer<T1>::Inner::Type T2> void Outer<T1>::Inner::update() { } // Specialization template<typename T1> template<Outer<T1>::Inner::A > void Outer<T1>::Inner: