C++ primer 第五版 中文版 9.3.1 节练习

本文档介绍了C++ Primer第五版9.3.1节的几个练习,包括使用deque从标准输入读取并打印string序列,将程序改为使用list并说明所需改动,以及从list<int>中按奇偶性拷贝元素到两个deque的解决方案。同时指出了在使用insert函数时尾迭代器失效的问题。


C++ primer 第五版 中文版 9.3.1


练习 9.18:编写程序,从标准输入读取string序列,存入一个deque中。编写一个循环,用迭代器打印deque中的元素。

答:

#include <iostream>
#include <string>
#include <deque>

using std::cout;
using std::cin;
using std::endl;
using std::string;
using std::deque;

int main()
{
	string tmpstr;
	deque<string> str;
	while (cin >> tmpstr)
	{
		str.push_back(tmpstr);
	}
	for(deque<string>::const_iterator iter = str.cbegin();iter!=str.cend();++iter)
		cout << *iter << " ";

	cout << endl;

	return 0;
}


练习 9.19:重写上题的程序,用list替代deque。列出程序要做出哪些改变。

答:

1。头文件包含修改

2。变量声明修改

#include <iostream>
#include <list>
#include <string>

using std::string;
using std::list;
using std::cout;
using std::cin;
using std::endl;

int main()
{
	string tmpstr;
	list<string> strl
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值