template<typename HELPER_>
class A{
public:
typedef HELPER_ HELPER ;
typedef typename HELPER::TRAITS_ TRAITS_2;
// other stuff....
};
Мой вопрос в том, что HELPER_
- это тип, тогда HELPER
также будет типом, тогда что означает HELPER::TRAITS
_. аналогично, если HELPER
не является именем класса, это просто указание неизвестного типа. Но в приведенном выше коде создается впечатление, что HELPER
- это имя класса, и он вызывает имя своей публичной переменной TRAITS_
.
Я хочу знать, что означает приведенный выше код.