这里有一段代码有点问题,原书是这个样子:
The typename is needed to inform the compiler that C’s iterator is supposed to be a type and not a value of some type, say, the integer 7. We can hide this implementation detail by introducing a type alias (§3.4.5) for Iterator:
template<typename T>
using Iterator<T> = typename T::iterator;
实际上,这个代码应该改成如下所示,
template<typename T>
using Iterator = typename T::iterator;
这个就是纯粹的语法问题。