我有一个包含字符串和向量的地图:
std::map<std::string, std::vector<int> > sorted_data;
字符串是人名,向量存储具有该名称的人的年龄。
如何访问向量以打印出它的内容并执行计算,例如数据的平均值。
任何其他关于语法和逻辑的解释都会非常有用,因为我正在努力解决这个问题。
希望你能帮忙。
安德鲁
您的地图包含许多与名称相关的向量,因此要访问其中一个,您可以编写以下内容,sorted_data["john"]
. 这将使您可以访问该特定向量。
例如,要计算平均值,您可以遍历向量中的所有元素并将它们相加。
int sum = 0;
for(int i = 0; i < sorted_data["john"].size(); i++)
{
sum+=sorted_data["john"][i];
}
float avg = sum/(float)sorted_data["john"].size();
您还可以使用迭代器对地图进行迭代。使用 c++ 参考站点并尝试理解示例代码。