如何使用std :: copy打印std :: map

时间:2016-09-16 09:39:35

标签: c++ c++11 stl

我有一个可以使用std :: copy function

打印到cout的向量
vector<string> sentence;
copy (sentence.cbegin(), sentence.cend(),ostream_iterator<string>(cout," "));

但对于地图我无法使用复制命令打印,我是否需要为此编写任何额外的步骤,以下是我尝试的两种不同的方式, 我是否需要重载运算符&lt;&lt;为了实现这个目标?

typedef std::map<std::string, std::string> StrStrMMap ;
StrStrMMap dict;
dict.insert(std::make_pair("A", "B"));
dict.insert(std::make_pair("A", "B"));
dict.insert(std::make_pair("A", "C"));
1. copy (dict.cbegin(), dict.cend(),ostream_iterator< StrStrMMap > (cout," "));

2.copy (dict.cbegin(), dict.cend(),ostream_iterator<std::string, std::string> (cout," ")); 

由于

0 个答案:

没有答案