Inherit constructors from template base class without repeating template arguments?
问题 How do I inherit constructors from a template base class without repeating the template arguments (and without using macros): For example, this does not work (using GCC 4.8): template <typename T> struct base {}; template <typename U> struct derived : base<U> { using base::base; }; It does work if I repeat the template arguments of the base class: template <typename T> struct base {}; template <typename U> struct derived : base<U> { using base<U>::base; }; The problem is that "U" might be