课程实验报告
课程名称 面向对象程序设计 姓名 实验名称 实 验 目 的 及 要 求 实 验 环 境 班级 学号 实验日期 实验成绩 实验1:C++函数程序设计 熟悉开发工具,熟练掌握标识符的作用域与可见性; 熟练掌握对象的生存期; 熟练掌握类的静态成员; Win 7 或 Win 10 Visual Studio 2008或更高版本 实 验 内 容 1.编辑、编译、运行教材例3-14,掌握内联函数的使用方法。 2.利用重载函数的相关知识,编程实现如下功能: (1)定义6个名为print的重载函数,功能分别为输出int、int[]、int [][]、double、double[]、double[][]类型的数据; (2)定义main函数,测试上述重载函数。 3.编辑、编译、运行教材例4-2,掌握构造函数的使用方法。 4.编辑、编译、运行教材例5-5,掌握静态成员的使用方法。 5.编辑、编译、运行教材例5-6,掌握友元函数的使用方法。 算 法 描 述 及 实 验 步 骤 调 试 过 程 及 实 验 结 果 在两个二维数组的重载函数定义时,本来这样定义void print(int a[][10],int m,int n),发现当实际输出的数组如果不等于形参中的10列时会找不到重载函数,从而无法输出。于是重新设计重载函数void print(int *a,int m,int n),将二维数组第一个元素的地址作为形参传递并用a[i*n+j]的方式输出,有效的避免了上述问题,运行成功结果如下。 其他几个例题运行结果如下: 总 结 附 录 通过本次实验,我对于重载函数的定义和使用有了更深入的了解,也学会了如何自定义重载函数并如何调用;通过对教材其他实例的编写调试,我对内联函数、构造函数、静态成员、友元函数也加深了理解和认识。我的思考是:第二个例题能不能都只通过传递一个参数来输出不同类型的变量。我虽然常识和思考了很多次但都没成功,以后还会对此问题和同学进行探讨和交流。 (手抄不少于40行关键源代码,写在报告背面即可,无需附页,对关键步骤添加注释) *注意: --雷同无效,禁止抄袭;
--A4纸单面打印,左侧装订,2个钉;
--以班为单位,各班负责人收齐并按学号由小到大顺序排序后上交; --报告上交时间,第8周周一。
相关推荐: