Почему этот код std:: map не работает?
после использования typename для моего итератора компилятор не смог распознать - & gt;second. get. Почему?
typename std::map<K,V>::iterator p; template<class K, class V> ///////////////////////////// //////////////////////////// p = mymap.find(Key); if(p != mymap.end()) { if(p->second.get() == val)//Compiler couldn't //recoginise get hy { throw 'a';//Value type cannot match value for previous key } }
Что я уже пробовал:
Я провел весь день в google.
Jochen Arndt
Пример кода не имеет смысла и не будет компилироваться. p зависит от K и V, и я ожидаю, что он будет использоваться внутри шаблона, а не снаружи.