-
2014-11-14
迄今为止,我们讨论的输入输出是以系统指定的标准设备(输入设备为键盘,输出设备为显示器)为对象的。在实际应用中,常以磁盘文件作为对象。即从磁盘文件 读取数据,将数据输...
-
2014-11-13
除了前面介绍的用于读取数据的成员函数外,istream类还有其他在输入数据时用得着的一些成员函数。 eof 函数 eof是end of file的缩写,表示文件结束。从输入流读取数据,如果到达文件末...
-
2014-11-13
getline函数的作用是从输入流中读取一行字符,其用法与带3个参数的get函数类似。即 cin.getline(字符数组(或字符指针), 字符个数n, 终止标志字符) [例13.7] 用getline函数读入一行字符。 复制纯...
-
2014-11-13
get()函数是cin输入流对象的成员函数,它有3种形式:无参数的,有一个参数的,有3个参数的。 1) 不带参数的get函数 其调用形式为 cin.get() 用来从指定的输入流中提取一个字符(包括空...
-
2014-11-12
标准输入流是从标准输入设备(键盘)流向程序的数据。在头文件iostream.h中定义了cin、cout、cerr、clog 4个流对象,cin是输入流,cout、cerr、clog是输出流。 cin是istream类的对象,它从标准输入...
-
2014-11-12
在程序中一般用cout和插入运算符实现输出,cout流在内存中有相应的缓冲区。有时用户还有特殊的输出要求,例如只输出一个字符。ostream类除了提供上面介绍过的用于格式控制的成员函...
-
2014-11-12
在输出数据时,为简便起见,往往不指定输出的格式,由系统根据数据的类型采取默认的格式,但有时希望数据按指定的格式输出,如要求以十六进制或八进制形式 输出一个 整数,对输...
-
2014-11-12
标准输出流是流向标准输出设备(显示器)的数据。ostream类定义了个输出流对象,即cout、cerr、clog,分述如下。 cout流对象 cont是console output的缩写,意为在控制台(终端显示器)的输出。...
-
2014-11-12
输入和输出是数据传送的过程,数据如流水一样从一处流向另一处。C++形象地将此过程称为流(Stream)。C++的输入输出流是指由若干字节组成的宇 节序列,这些宇节中的数据按顺序从一个...
-
2014-11-12
我们经常用到的输入和输出,都是以终端为对象的,即从键盘输入数据,运行结果输出到显示器屏幕上。从操作系统的角度看,每一个与主机相连的输入输出设备都 被看作一个文件。除...
-
2014-11-11
[例12.4] 虚函数和抽象基类的应用。 我们在例12.1介绍了以Point为基类的点圆圆柱体类的层次结构。现在要对它进行改写,在程序中使用虚函数和抽象基类。类的层次结构的顶层是抽象基...
-
2014-11-11
如果声明了一个类,一般可以用它定义对象。但是在面向对象程序设计中,往往有一些类,它们不用来生成对象。定义这些类的惟一目的是用它作为基类去建立派生类。它们作为一种基...
-
2014-11-11
有时在基类中将某一成员函数定为虚函数,并不是基类本身的要求,而是考虑到派生类的需要,在基类中预留了一个函数名,具体功能留给派生类根据需要去定义。 例如在前边的例12...
-
2014-11-10
我们已经介绍过析构函数,它的作用是在对象撤销之前做必要的清理现场的工作。 当派生类的对象从内存中撤销时一般先调用派生类的析构函数,然后再调用基类的析构函数。但是,如...
-
2014-11-10
使用虚函数时,有两点要注意: 只能用virtual声明类的成员函数,使它成为虚函数,而不能将类外的普通函数声明为虚函数。因为虚函数的作用是允许在派生类中对基类的虚函数重新定...
-
2014-11-10
这一节将探讨C++是怎样实现多态性的。 从例12.2中修改后的程序可以看到, 同一个display函数在不同对象中有不同的作用,呈现了多态。计算机系统应该能正确地选择调用对象。 在现实...
-
2014-11-10
我们知道,在同一类中是不能定义两个名字相同、参数个数和类型都相同的函数的,否则就是重复定义。但是在类的继承层次结构中,在不同的层次中可以出现名字相同、参数个数和类...
-
2014-11-10
下面是一个承上启下的例子。一方面它是有关继承和运算符重载内容的综合应用的例子,通过这个例子可以进一步融会贯通前面所学的内容,另一方面又是作为讨论多态性的一个基础用...
-
2014-11-10
多态性(polymorphism)是面向对象程序设计的一个重要特征。如果一种语言只支持类而不支持多态,是不能被称为面向对象语言的,只能说是基于对象的,如Ada、VB就属此类。C++支持多态性,...
-
2014-11-09
继承是面向对象技术的重要内容,有了继承,使软件的重用成为可能。 过去,软件人员开发新的软件,能从已有的软件中直接选用完全符合要求的部件不 多,一般都要进行许多修改才...
-
2014-11-09
我们知道,在一个类中可以用类对象作为数据成员,即子对象。实际上,对象成员的类型可以是本派生类的基类,也可以是另外一个已定义的类。 在一个类中以另一个类的对象作为数据...
-
2014-11-09
在公用继承、私有继承和保护继承中,只有公用继承能较好地保留基类的特征,它保留了除构造函数和析构函数以外的基类所有成员,基类的公用或保护成员的访问权限在派生类中全部...
-
2014-11-09
我们知道,如果一个派生类有多个直接基类,而这些直接基类又有一个共同的基类,则在最终的派生类中会保留该间接共同基类数据成员的多份同名成员。在引用这些同名的成员时,必...
-
2014-11-09
多重继承可以反映现实生活中的情况,能够有效地处理一些较复杂的问题,使编写程序具有灵活性,但是多重继承也引起了一些值得注意的问题,它增加了程序的复杂度,使 程序的编写...
-
2014-11-07
前面讨论的是单继承,即一个类是从一个基类派生而来的。实际上,常常有这样的情况:一个派生类有两个或多个基类,派生类从两个或多个基类中继承所需的属性。C++为了适应这种情...