我正在创建一个模板Map(键和值)。它有一个访问者界面(不是问题),一个包装器(也不是问题),以及嵌套在它内部的迭代器(问题)。
这是hpp:http://pastebin.com/tVv3Xkgp
它给了我19个错误。
Error 2 error C2061: syntax error : identifier 'Iterator' c:\users\zack\documents\visual studio 2013\projects\maptemplate\maptemplate\Map.hpp 58 1 MapTemplate
Error 3 error C2805: binary 'operator <<' has too few parameters c:\users\zack\documents\visual studio 2013\projects\maptemplate\maptemplate\Map.hpp 58 1 MapTemplate
似乎认为Iterator没有定义。显然operator<<()
参数太少了。我认为它忽略了Iterator,因为它需要2个参数。关于什么是错的任何想法?
答案 0 :(得分:0)
Iterator
是一种依赖类型,因此您需要typename util::Map<KeyType, ValueType>::Iterator&