У меня есть код в виде:C++: Как получить тип итератора из определенного объекта контейнера
unordered_set<pair<int,int>,CustomHash> Edges;
typedef unordered_set<pair<int,int>,CustomHash>::iterator EdgesIt;
...
for(auto it=Edges.begin();it!=Edges.end();it++){
list<EdgesIt> List;
}
и т.д. Как я могу избежать определения нового типа EdgesIt, которые будут использоваться в объявлении списка и получить его в некоторые разумный способ, например: предлагает только
list<Edges::iterator_type> List;
InteliSense Edges::iterator
который определяется как typedef std::iterator pair<int,int> iterator
. Более того, это не работает. Я также пытался использовать unordered_set::iterator
, но он также не работает.
«Это не работает» не является полезным описанием проблемы. 'typedef Edges :: iterator EdgesIt;' правильный. –