c++中关于输入迭代器 输出迭代器的问题

碎炎 2011-05-09 03:57:35
书上给输入迭代器的概念是站在程序角度看,是给程序输入,就是迭代器输出给程序
c++中输入迭代器的模型是istream_itorator
但是用起来似乎感觉是用cin给迭代器输入,不是迭代器输出呀!
还是得这么理解 把cin缓冲区看作一个容器,通过输入迭代器,把流中的数据输出给需要输入的容器?这样理解对否?
然后输出迭代器就是通过迭代器把容器中的值输入到cout缓冲区?
...全文
224 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
碎炎 2011-05-09
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 sryan 的回复:]
引用 3 楼 ljt3969636 的回复:
具体理解是好比电脑设备 输入设备输出设备 都是针对电脑,电脑接受输出,电脑输出

同理,迭代器是针对容器

---》容器--》
输入 输出

置于你绑什么,是文件啊,是标准输入输出流啊是你的需要


——输入迭代器允许使用者用++运算符向前迭代,并用*操作符读取迭代器指向的值。
——输出迭代器允许使用者向前迭代并将一个新值赋给迭……
[/Quote]
说错了 输入迭代器是读取迭代器指向的值?那么我定义了istream_itorator的话 这个迭代器指向的就是istream对象的缓冲区吧 缓冲区输出给迭代器然后输出给容器 是不是这个意思?
碎炎 2011-05-09
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 ljt3969636 的回复:]
具体理解是好比电脑设备 输入设备输出设备 都是针对电脑,电脑接受输出,电脑输出

同理,迭代器是针对容器

---》容器--》
输入 输出

置于你绑什么,是文件啊,是标准输入输出流啊是你的需要
[/Quote]

——输入迭代器允许使用者用++运算符向前迭代,并用*操作符读取迭代器指向的值。
——输出迭代器允许使用者向前迭代并将一个新值赋给迭代器指向的对象。


输入迭代器是读取迭代器指向的值?那么我定义了ostream_itorator的话 这个迭代器指向的就是ostream对象的缓冲区吧 给缓冲区输入 是不是这个意思?
碎炎 2011-05-09
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 ljt3969636 的回复:]
具体理解是好比电脑设备 输入设备输出设备 都是针对电脑,电脑接受输出,电脑输出

同理,迭代器是针对容器

---》容器--》
输入 输出

置于你绑什么,是文件啊,是标准输入输出流啊是你的需要
[/Quote]


输出迭代器
输出是指用于将信息从程序传输给容器的迭代器,因此程序的输出就是容器的输入。
这句话的意思不是输入么?把数据传输给容器 怎么成输出了?
ljt3969636 2011-05-09
  • 打赏
  • 举报
回复
具体理解是好比电脑设备 输入设备输出设备 都是针对电脑,电脑接受输出,电脑输出

同理,迭代器是针对容器

---》容器--》
输入 输出

置于你绑什么,是文件啊,是标准输入输出流啊是你的需要
碎炎 2011-05-09
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 ljt3969636 的回复:]
cin输入流
cout输出流

什么流的迭代器就是绑什么流
[/Quote]
就是把cin缓冲区的数据输出 就是输出迭代器么?而对于接受数据的容器,就是输入吧?
ljt3969636 2011-05-09
  • 打赏
  • 举报
回复
cin输入流
cout输出流

什么流的迭代器就是绑什么流

64,654

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧