我正在尝试编写一个函数,使用模板从地图中提取键,使其更通用。一直在"期待&#39 ;;'在它之前"然后在迭代器的声明中"' iter'未在此范围内声明。请帮忙。以下是该功能的列表。
template<typename TK, typename TV>
std::vector<TK> extract_map_keys(std::map<TK, TV> const& input_map)
{
std::vector<TK> retval;
map< TK, TV >::iterator iter; // <-- first ERROR
for ( iter = input_map.begin(); iter != input_map.end(); iter ++) { // <-- second ERROR
retval.push_back(iter->first);
}
return retval;
}