Я создаю шаблонный класс с внутренним служебным классом. Все специализации шаблона требуют одного и того же внутреннего класса:
template<...> class Outer {
class Inner { };
};
Это дает мне Outer <...> :: Inner
, но я хочу, чтобы все Inner
были того же типа, что и если бы я просто написал:
class Inner { };
template <...> class Outer { };
или если бы Outer
просто не был классом шаблона:
class Outer {
class Inner { };
};
давая мне Outer :: Inner
. Я бы хотел, чтобы Outer :: Inner
работал для всех Outer <>
, если это возможно (только по соображениям пространства имен / ясности). В противном случае, конечно, я могу просто переместить Внутренний
наружу.