C++ primer 第五版 中文版 练习 11.7
题目:定义一个map,关键字是家庭的姓,值是一个vector,保存家中孩子(们)的名字。
编写代码,实现添加新的家庭以及向已有家庭中添加新的孩子。
答:
/*
定义一个map,关键字是家庭的姓,值是一个vector,保存家中孩子(们)的名字。
编写代码,实现添加新的家庭以及向已有家庭中添加新的孩子。
*/
#include <iostream>
#include <map>
#include <string>
#include <vector>
using namespace std;
int main()
{
map<string, vector<string>> famliy = { { "wang", { "yan", "wei" } }, { "li", { "ke", "fei" } } };
string famliyname, name;
cout << "请输入姓和名,以空格或者回车格开:";
cin >> famliyname >> name;
famliy[famliyname].push_back(name);
for (const auto &w : famliy)
{
cout <<"家庭的姓为:"<< w.first << " "<<"有这些孩子的名:"<<" ";
for (const auto &a : w.second)
cout << a << "、";
cout << endl;
}
return 0;
}