内蒙古科技大学信息工程学院计算机系《面向对象程序设计》实验报告
实验内容(由学生填写)四、实验过程
练习1 题目提供源代码如下
编译结果如下
分析之后得出结论
首先静态成员函数SetAge中不可以使用指针,也不可以直接使用非静态数据成员age 此处应该使用对象名或者类名间接引用age 其次nTotalObj为私有属性,不可以直接访问,且题目要求不可以修改其属性,则添加一个成员函数,使其返回值等于nTotalObj,则代替了原先nTotalObj的功能
修改之后的代码如下
然后再次编译运行结果如下
运行结果正确,且不影响nTotalObj的计数器功能,代码修改正确练习2
题目提供源代码如下
编译之后结果如下
分析错误原因有两点
错误1 CTeacher类中的成员函数SetStuAge不能直接访问CStudent类内嵌成员stu的数据成员age 错误2 CTeacher类构造函数的初始化含有错误,内嵌对象stu的数据成员也应该包含在内
修改之后代码如下
运行结果如下
成功运行,修改正确
练习3
根据题意,所编写代码如下
说明:
1、每个实验项目填写一份实验报告,电子版命名方式为:学号姓名项目号.doc。
例如:1167111182张三3.doc表示张三做的第3个项目的实验报告。
2、实验报告电子版应该在实验后一周内提交到教务处网站的网络综合平台对应课程下。
3、任课教师要求在收到实验报告的一周内进行批阅,并给出成绩及评语。
4、实验报告电子版由教务处网站服务器保存。
5、表格宽度可以根据实际情况伸缩。