typename用法

typename的两种用法:

1)关键字typename被用来做为型别之前的标识符号,这也是它最特殊的一点:

template <class T>

class MyClass

  typename T::size_type value_type;

  ...

};

这里typename指出size_type是类T中定义的一个型别(如size_type是类T中存在的另外int型),因此该语句是将value_type声明为T::size_type的别名;如果没有typename关键字,size_type会被当成一个static成员。

2)上述中的template<class T>中的class 可以换成typename,在这方面class与typename是完全等价的。

posted on 2013-04-14 10:20  wickedboy237  阅读(344)  评论(0编辑  收藏  举报

导航