1 2 3 4 5 6 7 8 9 10 11
template <typename T1, typename T2> struct A { typedef T1 MyT1; using MyT2 = T2; }; using B = A<int, char>; template<typename T> using C = A<int, T>;