>>274
月とすっぽんぐらい全然違う.
typenameはtemplate引数で与えられた識別子が型名であることを
コンパイラに明示するためのもの.
一方typeofはインスタンスの型を得るもの.

template<typename T> class C{};
C<int> a;
typeof(a) b; // C<int> b; と同じ