面向对象程序设计及C课程实验大纲.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象程序设计及C课程实验大纲

《面向对象程序设计及C++》课程实验大纲 课程编号:B0300021C    课程名称:面向对象程序设计及C++ 课内总学时:32         上机实验学时:8×2 实验课程的性质、目的和任务 性质:本课程非独立设课,是通识基础课《面向对象程序设计及C++》的上机部分,这一环节对于整个课程的学习至关重要。 目的:使学生通过上机实验更好地理解理论课所授知识,培养学生运用C++语言进行基本的面向对象程序设计的能力。对学生在编程风格、面向对象程序设计方法等方面进行系统和严格的训练。 任务:、利用VC++6.0集成环境中相应工具进行编程的查错、改错、调试、测试,完成类和对象的定义、继承、多态、流运算符重载及文件操作等实验。 实验内容、学时分配及基本要求 序号 实验名称 课时 实验内容及要求 开出组数 实验类型 选做 必做 备注 1 类和对象的定义及使用 2×2 内容: (1)定义一个Time类,其数据成员均为私有,定义构造、析构函数和若干public成员函数,用于改变、获取、输出数据成员值。主函数中定义对象,通过对象实现各种操作。 (2)将上题中输出函数改为类的友元函数定义。 (3)定义一个Girl类和Boy类,将Girl类作为Boy类的友元类,在Girl类的某成员函数中操作Boy类的私有成员,观察程序运行结果;反之,在Boy类的某成员函数中操作Girl类的私有成员,观察编译器给出的信息。 要求: (1)掌握在VC++6.0环境下进行C++程序开发的过程和方法。 (2)掌握类和对象的定义,理解构造、析构函数的特殊性,理解面向对象方法中通过对象间传递消息的工作机制。 (3)掌握友元函数和友元类的定义及使用,理解友元的不可逆性。 (4)利用调试工具观察程序执行的每一步。 150 验证 √ 2 继承与派生实验 2×2 内容: (1)定义一个车基类,派生出自行车类和汽车类,又以自行车类和汽车类为基类共同派生出摩托车类,每个类都要定义带有参数的构造函数。对自行车类继承车基类的方式分别用private、protected、public,观察基类成员在派生类中的访问属性;观察自行车类、汽车类和摩托车类对象定义时构造、析构函数的调用顺序。 (2)将上一题的车基类声明为虚基类再观察运行结果。 (3)定义Base类及它的公有派生类Derived类,定义基类和派生类的指针、引用、对象,对赋值兼容的三种情况作测试。 要求: (1)正确运用继承与派生机制定义派生类,掌握派生类的构造、析构函数的正确定义与调用顺序。 (2)理解多层次的混合继承中所存在的二义性问题,掌握用虚基类消除二义性的原理和方法。 (3)正确理解赋值兼容的三种情况。 150 验证 √ 3 多态性实验 2×2 内容: (1)定义一个抽象类容器类,其中定义若干纯虚函数,实现求表面积、体积、输出等功能,由此抽象类派生出正方体、球体和圆柱体等多个派生类,在各个派生类中重载各纯虚函数实现特定功能。各个类成员的初始化均由本类构造函数实现。在主函数中,定义容器类的指针和各个派生类的对象,使指针指向不同对象处调用相同的函数时能执行不同的函数代码,从而实现动态多态性。 (2)定义复数类,有实部、虚部两个成员变量,在该类中定义多个重载的构造函数、定义析构函数和输出函数,并且重载+、-、*、/、++(分前++和后++)。在主函数中定义复数类的对象,实现复数的各种算术运算,通过重载实现静态多态性。 要求: (1)进一步熟悉类和对象的定义及使用,在类中通过运算符及函数重载实现静态多态性,掌握常用运算符的重载方法。 (2)进一步熟悉派生类定义及使用,通过抽象类、纯虚函数、基类指针或引用实现动态多态性。 (3)利用调试工具观察程序执行的每一步,尤其注意多态性实现时运行的是哪一个函数的代码,从而更好地理解多态性。 150 设计 √ 4 流运算符的重载及文件的使用 2×2 内容: (1)在上一次实验的复数类中,增加输入流运算符和输出流运算符的重载,在主函数中可通过“cin对象名”和“cout对象名”输入阻、输出对象的值。 (2)定义ofstream流类对象,在磁盘上建立一个文本文件,再定义一个ifstream流类对象,将磁盘上的文本文件内容读到内存并显示在屏幕上。 (3)定义学生类,该类包含学生的一些基本信息。定义流对象,实现将学生信息以二进制文件方式写到磁盘中,再将磁盘中的信息调出显示。 要求: (1)掌握在类中输入、输出流运算符的重载。 (2)会正确利用C++中的流实现文本、二进制文件的打开、读写、关闭过程。 150 验证 √ 考核及实验报告 (一) 考核 本课程实验非独立设课,是《面向对象程序设计及C+

文档评论(0)

almm118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档