为什么不编译:
template <typename Iter> void foo(Iter begin, Iter end){
//typedef typename Iter::value_type elementType;
//using elementType=decltype (*begin);
typedef *Iter elementType;
elementType tmp=*begin;
};
这是使用容器迭代器实例化的。 我知道我可以使用其中一条注释掉的行,但很好奇为什么这不起作用,大多数类型操作都以类似的方式完成。
谢谢!