通过前面的学习我们知道,C++ 程序中一般用 ostream 类的 cout 输出流对象和 << 输出运算符实现输出,并且 cout 输出流在内存中有相应的缓冲区。但有时用户还有特殊的输出需求,例如只输出一个字符,这种情况下可以借助该类提供的 put() 成员方法实现。
上节讲到,隐式类型转换是安全的,显式类型转换是有风险的,C语言之所以增加强制类型转换的语法,就是为了强调风险,让程序员意识到自己在做什么。
通常情况下,C++ 程序中使用 cin 输入流实现数据的输入,用 cout 输出流实现数据的输出。除此之外,C++ 还提供有适用于特定场景的输入输出流,比如 cerr、clog 等。
C++输入输出流本质上就是已经定义好的类对象,之所以称它们为"流",C++ 开发者认为数据传输(包含输入和输出)的过程像水一样,从一个地方流到另一个地方,所以称实现输入的为输入流,实现数据输出的为输出流。
作为类对象,C++输入流和输出流不仅可以实现基本的输入输出操作,通过类内部的成员函数,还可以满足特殊场景中的输入输出需求,这些知识在本章中都会做详细讲解。
转换构造函数能够将其它类型转换为当前类类型(例如将 double 类型转换为 Complex 类型),但是不能反过来将当前类类型转换为其它类型(例如将 Complex 类型转换为 double 类型)。
第 4316 页 共 4404 页
点击领取支付宝红包
点击下载免费精品课