【发布时间】:2014-10-17 23:14:07
【问题描述】:
我有一个字符串类型的向量,其中包含以下内容:
tpNums contains: 2 15 38 43 50 5 14 16 29 53
我正在尝试获取向量的内容并计算向量中每个数字出现的次数,在这种情况下它们都只出现一次;以下代码:
std::map<std::string, std::size_t> results;
std::for_each(begin(tpNums), end(tpNums), [&](std::string const& s)
{
++results[s];
});
我的问题是,如何输出结果地图的内容?
有没有更简单的方法可以解决我的问题,或者这是唯一的方法?
编辑:
我试过这个:
std::map<std::string, std::size_t> results;
std::for_each(begin(tpNums), end(tpNums), [&](std::string const& s)
{
++results[s];
cout << results[s];
});
输出:1112
我认为我输出的不是正确的东西,我尝试了不同的方法,但它们要么显示错误,要么输出错误的东西
【问题讨论】:
-
显示你的
cout相关代码? -
你说的是哪个向量?我在代码中的任何地方都看不到任何
std::vector。 -
tpNums 是我从未展示过它的声明位置的向量