шаблонного члена шаблона класса, а когда — нет.
Вот если объявляю, друга, то не нужно:
template <typename T> class Friend;
template <typename T> class Foo {
friend class Friend<T>;
....
}
Но если объявляю псевдоним, то нужно :
template <typename T> class Foo {
typename typedef std::vector<T>::size_type size_type;
....
}
Поч так?
http://stackoverflow.com/questions/1600936/officially-what-is-typename-for
тайпнейм при описании шаблона и при использовании вложенного типа из шаббонного типа. Ща поясню второй случай
Обсуждают сегодня