- 1、本文档共2页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
11级面向对象实验内容和要求
实验一:类与对象
要求:建一个consol application工程,构造一个CComplex类;
有成员变量real、imag;二个构造函数,一个无参数,一个有二个参数,二个参数的构造函数要求用构造函数初始化表给成员变量赋值;一个析构函数;自己建二个成员函数;
将CComplex类的头文件与源文件分开,main函数单独放在“main.cpp”文件中,三个文件用#include关联好;
实验二:运算符重载
要求:在实验一CComplex类的基础上,重载运算符“+”、“-”、“*”、“”;
实验三:派生与继承
要求:
1、创建一个类CMyClass,有一个成员int a、有一个带参数的构造函数,给a赋值;
2、创建一个基类CBase; 有二个成员变量int b、CMyClass c;重点是写出其构造函数(有一个带参数的构造函数,通过构造函数初始化表给b和c赋值);
3、创建一个派生类CDrive,有一个成员变量d,要求自己写好该类的构造函数,注意其构造函数的参数要求,以及通过构造函数初始化表给基类的构造函数传递相关参数。
4、将三个类的声明部分放在同一个头文件中,函数定义放在同一个源文件中;
实验四:多态与虚函数
在实验三的CBase类和CDrive基础上改造,公有派生,各有一个构造函数、析构函数及一个Display()函数,自己在各函数中cout一句标记性的语句;
先观察单独在main函数中创建一个CBase对象a、CDrive对象b时构造函数和析构函数的调用情况;用这二个对象分别调用Display()函数时的运行情况;再改Display()为虚函数看有何不同;
创建一个CBase类型的指针p,分别用 CBase *p = a;CBase *p = b;然后用p调用Display()函数,观察运行结果。再改Display()为虚函数看有何不同;
分别用 CBase *p = new CBase;CBase *p = new CDrive;先观察构造运行情况,再看有无delete p的区别;再改CBase的析构函数为虚函数,看delete p的效果;
实验五:文件存储与读出
参照课本例题11、12,写一个ASCII码文件的读写操作,文件名“f1”;
参照课本命题16,写一个二进制文件的读写操作,能够指定写入和读出的位置进行操作,例如:先写5外学生的数据,第二步能直接读出第2个学生的数据,用cout显示;然后再构建一个学生的数据,并覆盖文件中第3个学生的数据,再直接读出并显示。
文档评论(0)