博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++ Primer(第五版)练习12.6
阅读量:7229 次
发布时间:2019-06-29

本文共 1037 字,大约阅读时间需要 3 分钟。

hot3.png

编写函数,返回一个动态分配的int的vertor。将此vector传递给另一个函数,这个函数读取标准输入,将读入的值保存在vector元素中。再将vector传递给另一个函数,打印读入的值。记得在恰当的时刻delete vector。

 

#include 
#include
using namespace std;void fun2(istream &cin,vector
*v){ int i; while (cin>>i) { v->push_back(i); }}void fun3(vector
*v){ for (auto i=(*v).begin();i!=(*v).end();++i) { cout<<*i<
* fun1(){ auto *v = new vector
; fun2(cin,v); fun3(v); return v;}int main(){ auto ptr = fun1(); delete ptr; return 0;}

代码:

 

练习12.7,改用用shared_ptr。代码如下:

#include 
#include
#include
using namespace std;void fun2(istream &cin,shared_ptr
> v){ int i; while (cin>>i) { v->push_back(i); }}void fun3(shared_ptr
> v){ for (auto i=(*v).begin();i!=(*v).end();++i) { cout<<*i<
> fun1(){ shared_ptr
> v = make_shared
>(); fun2(cin,v); fun3(v); return v;}int main(){ fun1(); return 0;}

 

转载于:https://my.oschina.net/feistel/blog/1812503

你可能感兴趣的文章
在 Delphi 下使用 DirectSound (17): 频率均衡效果器 IDirectSoundFXParamEq8
查看>>
文件操作命令一cp 2
查看>>
Multi-Mechanize工程目录结构说明
查看>>
halt
查看>>
标准ACL+扩展ACL+命名ACL
查看>>
Meteor应用的启动过程分析
查看>>
九曲黄河万里沙,浪淘风簸自天涯 — 正则表达式
查看>>
欲哭无泪,联想笔记本性价比
查看>>
很简单的在Ubuntu系统下安装字体和切换默认字体的方法
查看>>
我的友情链接
查看>>
dojo框架用hitch实现函数与上下文的绑定
查看>>
ubuntu编译安装vim7.4
查看>>
python之利用PIL库实现页面的图片验证码及缩略图
查看>>
IP-COM设置×××
查看>>
VPC配置案例
查看>>
十年IT运维谈(五):要专业化还是平台化?
查看>>
分享超级给力的一个外发光Shader
查看>>
oblog_4.6_SQL 语句
查看>>
通过Git WebHooks+脚本实现自动更新发布代码之shell脚本
查看>>
对象实例化、字符串的使用方法
查看>>