如何打印不同类型的地图

问题描述

我有下一张地图:

map<string,set<int>> myMap;

如何打印其值?

我也尝试通过“自动”和迭代器两种方式来实现,但它给了我下一个错误

二进制表达式的无效操作数


完整代码如下:

#include <iostream>
#include <map>
#include <set>
#include <string>
#include <vector>
#include <iterator>

using namespace std;

int main() {
  int x;
  int g = 0;
  vector<string> words;
  map<int,int> documents_to_relevance;
  map<string,set<int>> word_to_documents;
  cin >> x;
  for(int i = 0; i < x; i++)
  {
    string word;
    cin >> word;
    words.push_back(word);
  }
  for(auto word_to_cout : words)
  {
    word_to_documents[word_to_cout].insert(g);
    g++;
  }
  map<string,set<int>>::iterator it = word_to_documents.begin();
  cout << "Words in map with id:";
  for(map<string,set<int>>::const_iterator it = word_to_documents.begin(); it != word_to_documents.cend(); it++)
  {
    cout << "Id for " << it->first << "is " << it->second << endl; 
  }
  return 0;
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)