Я получаю эту ошибку, где у меня есть
std:map<std:string,std::string> data{std::istream_iterator<std::pair<int,int>>(in),std::istream_iterator<std::pair<int,int>> ()};
Является ли Visual Studio >> бинарным оператором, а не закрывающими скобками для итератора и пары? Как это можно исправить?
Это не имеет ничего общего с >>
в std::istream_iterator<std::pair<int,int>>
, Это связано с std::istream_iterator
вызывая предоставленный поток operator >>
чтобы получить элементы из потока. Здесь нет operator >>
за std::pair
по умолчанию, поэтому, если вы не предоставите один, вы получите ошибку компилятора.
Других решений пока нет …