C++Primer11.3.1

练习11.15:

map<int,vector<int>>::mapped_type是一个vector<int>类型

map<int,vector<int>>::key_type是一个int类型

map<int,vector<int>>::value_type是一个pair<int,vector<int>>类型

练习11.16:使用second成员赋值

#include <iostream>
using namespace std;
#include <map>
#include <string>
#include <set>
#include <vector>



int main()
{
	map<string, int>m = { {"hello",10},{"world",20},{"c++",30} };
	map<string, int>::iterator map_it = m.begin();
	int n = 50;
	map_it->second = n;
	for (auto c : m)
	{
		cout << c.first << ": " << c.second << endl;
	}
	system("pause");
	return 0;
}

练习11.17:

copy(v.begin(),v.end(),inserter(c,c.end())); 该调用合法,用来增加multiset的新元素,没有改变原有关键字

copy(v.begin(),v.end(),back_inserter(c)); 该调用不合法,multiset没有push_back成员

 

copy(c.begin(),c.end(),inserter(v,v.end())); 该调用合法,将关键字复制到vector中

copy(c.begin(),c.end(),back_inserter(v)); 该调用合法,使用push_back插入,vector有push_back成员

练习11.18:map_it的类型为map<string,int>::const_iterator.

#include <iostream>
using namespace std;
#include <map>
#include <string>
#include <set>
#include <vector>


int main()
{
	map<string, int>mp = { {"hello",10},{"world",20},{"c++",30} };
	map<string, int>::const_iterator map_it = mp.cbegin();
	while (map_it != mp.cend())
	{
		cout << map_it->first << ": " << map_it->second << endl;
		++map_it;
	}
	system("pause");
	return 0;
}

练习11.19:

	multiset<Sales_date, bool(*)(const Sales_date&, const Sales_date&)>bookstore(compareIsbn);
	multiset < Sales_date, bool(*)(const Sales_date&, const Sales_date&)>::const_iterator it = bookstore.cbegin();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小白学C++.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值