typenameが必要な理由

『プログラミング言語C++』 C.13.5 typenameとテンプレート テンプレートを使ったプログラムでは、なぜ型名にtypenameを付ける必要があるのだろうか 以下のコードはどちらもエラーになる template <class Container> struct hoge { typedef Container::iterator iterator; // エラー }; template <class Container> void foo(Container& c) { Container::iter</class></class>…