什么是'流',与ci​​n和cout有关?

时间:2009-08-18 00:12:25

标签: stream cout cin

教程是关于cin和cout: “从语法上讲,这些流不用作函数:相反,数据被写入流或使用运算符<<<<<<<>读取,称为提取运算符。”

什么是'流'?

3 个答案:

答案 0 :(得分:3)

将“Stream”视为物理软管或管道。一方面,有人可能会倒入一些水。另一方面,它会出来。这是“阅读”和“写入”流。

流只是数据传播的地方。它可以是“套接字流”(通过互联网)或“文件流”(到文件),也可能是“内存流”,只是写入内存中位置(ram)的数据。

答案 1 :(得分:0)

“stream”是表示数据源或可以写入数据的位置的对象。

示例包括文件句柄和管道 - 您可以从中读取数据或将数据写入的内容。

流的一个重要属性是它们共享一个公共接口,因此相同的代码可以写入文件或管道(例如)而无需重写。

答案 2 :(得分:0)

您应该将流视为数据底层“来源”或“汇点”的抽象。源是您从中读取数据的源,而接收器是您将数据写入的源。

流的概念允许您在各种形式的媒体,网络连接,应用程序之间的管道,文件等上执行I / O.

流抽象对于我们作为开发人员非常有价值,因为它允许我们简化输入和输出,并且它使我们能够灵活地安排和重新连接这些流的源和目的地。

一个很好的类比是软管。您可以通过软管发送和接收数据,您可以将这些软管连接到各种东西。

通过允许程序通过软管进行交谈,我们允许各种程序相互通信,并且我们大大提高了互操作性和实用性。

这是UNIX哲学的核心,并支持一些非常强大的编程习惯用法。