在看c++ primer的时候见到了一下这种用法:c++
typedef typename std::vector<int>::size_type size_type;
以为这里面的typename特别使人费解。最后找到了下面这篇问题,感受写的很清楚:spa
http://feihu.me/blog/2014/the-origin-and-usage-of-typename/code
具体细节文章里面都写到了。简单说来,以上的语句效力等同于:blog
typedef std::vector<int>::size_type size_type;
不过文章里面关于“限定名”"name"这些词汇定义依然有点模糊,本身理解好像是指类型而非变量名称。get