Напишите safe_insert() (параграф Е.4.2), которая вставляет элементы в существующий map ( а не копирует во временную переменную). Какие ограничения придется наложить на операции?
Ок попробуем щас написать. Примера для map нету в книге, ну да ладно. От что то я набрал, фиг его знает какие тут ограничения и вообще по моему я что то не правильно сделал.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
#include <iostream> using std::cout; using std::endl; #include <map> using std::map; using std::pair; #include <string> using std::string; template<class C,class Iter> void safe_insert(C& c, Iter begin, Iter end) { c.insert(begin,end); } int main() { map<int,string> m; m[2]="eb ta"; map<int,string> m1; m1[4]="world"; m1[5]="hellow"; safe_insert(m,m1.begin(),m1.end()); map<int,string>::iterator it; for(it=m.begin();it!=m.end();++it) cout <<it->first<<' '<<it->second<<endl; return 0; } |
[youtube]https://www.youtube.com/watch?v=HjHxwNCjikI[/youtube]