11.12
std::vector<std::pair<std::string, int>> vec;
while (std::cin >> str >> i)
vec.push_back(std::pair<std::string, int>(str, i));
11.13
vec.push_back(std::pair<std::string, int>(str, i));
vec.push_back(std::make_pair(str, i));
vec.push_back({ str, i }); //我认为这个最易于编写和理解
vec.emplace_back(str, i);
11.14
#include <iostream>
#include <map>
#include <string>
#include <algorithm>
#include <vector>
using std::string;
using std::vector;
using std::map;
using std::pair;
using std::cin;
using std::cout;
using std::endl;
using Families = map < string, vector<pair<string, string>>>;
Families make_families()
{
Families families;
string in1, in2, in3;
cout << "姓:" << endl;
cin >> in1;
cout << "孩子及生日:" << endl;
while (cin >> in2 >> in3) {
families[in1].push_back(pair<string, string>(in2, in3));
}
return families;
}
int main() {
auto mf = make_families();
for (const auto &a : mf) {
cout << a.first << ":\n";
for (const auto &pair : a.second) {
cout << pair.first << ":" << pair.second << endl;
}
}
return 0;
}
2225

被折叠的 条评论
为什么被折叠?



