我收到了这个错误
std:map<std:string,std::string> data{std::istream_iterator<std::pair<int,int>>(in),std::istream_iterator<std::pair<int,int>> ()};
是Visual Studio看到&gt;&gt;作为二元运算符而不是迭代器和对的右括号?如何解决这个问题?
答案 0 :(得分:4)
这与>>
中的std::istream_iterator<std::pair<int,int>>
无关。这与std::istream_iterator
调用提供的流operator >>
以获取流中的元素有关。默认情况下operator >>
没有std::pair
,所以除非您提供一个,否则会出现编译错误。