面向对象程序设计(c )-大作业

面向对象程序设计(c )-大作业

ID:9190750

大小:49.50 KB

页数:11页

时间:2018-04-21

面向对象程序设计(c  )-大作业_第1页
面向对象程序设计(c  )-大作业_第2页
面向对象程序设计(c  )-大作业_第3页
面向对象程序设计(c  )-大作业_第4页
面向对象程序设计(c  )-大作业_第5页
资源描述:

《面向对象程序设计(c )-大作业》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、华北科技学院计算机学院综合性实验报告华北科技学院计算机系综合性实验实验报告课程名称《面向对象程序设计(C++)》实验学期2012至2013学年第一学期学生所在院部计算机学院年级2011专业班级计科B11-1学生姓名学号任课教师实验成绩计算机系制第10页华北科技学院计算机学院综合性实验报告《面向对象程序设计(C++)》课程综合性实验报告开课实验室:软件工程实验室2013年1月4日实验题目复数类的设计一、实验目的(1)掌握类的概念及构造方法;(2)掌握构造函数的定义与使用;(3)掌握友元的定义与使用;(4)掌握运算符的重载定义与使用。二、设备与环境Visu

2、alc++6.0三、实验内容设计复数类,重载+,-,*,/,<<,>>等运算符。编程设计实现下列函数:MyComplex();MyComplex(inta);MyComplex(inta,intb);MyComplex(constMyComplex&v);MyComplex&operator=(constMyComplex&rhs);MyComplex&operator+=(constMyComplex&rhs);MyComplex&operator-=(constMyComplex&rhs);MyComplex&operator*=(constMyC

3、omplex&rhs);MyComplex&operator/=(constMyComplex&rhs);friendMyComplexoperator+(constMyComplex&m,constMyComplex&n);friendMyComplexoperator-(constMyComplex&m,constMyComplex&n);friendMyComplexoperator*(constMyComplex&m,constMyComplex&n);friendMyComplexoperator/(constMyComplex&m,cons

4、tMyComplex&n);friendbooloperator==(constMyComplex&,constMyComplex&);friendbooloperator!=(constMyComplex&,constMyComplex&);friendostream&operator<<(ostream&s,MyComplext);friendistream&operator>>(istream&s,MyComplex&t);四、实验结果及分析实验结果:第10页华北科技学院计算机学院综合性实验报告实验分析:首先,用class定义复数类Complex

5、,在类声明中设置访问限定符private、public。将只能让类内部访问的数据成员设置为private权限,即intrem,imp;将需要让类的外部函数(非本类定义的函数)访问的成员函数设置为public权限。类的数据成员可以是任何数据类型,如整型、浮点型,字符型,数组,指针、引用等,但不能指定为auto、register、extern存储类型。在类域的函数原型前加上关键字friend,将该函数指定为Complex类的友元,使该函数可以直接访问Complex类的私有成员。类的友元函数是一种特殊的普通函数,可以直接访问类的私有成员。关键字friend用

6、于声明友元,它只能出现在类的声明中。友元函数并非类的成员函数,所以它不受public,private的限定,无论将它放在public区,或者private区,都是完全相同的。然后,再定义成员函数。类的成员函数有两种定义方式:一种是在声明类时就给出成员函数的定义,以这种方式定义的成员函数若符合内联函数的条件就会被处理为内联函数;另一种是在声明类时只声名成员函数的原型,然后在类的外部定义成员函数。本实验采用的第二种方法,类声明中成员函数原型中的形参名可以省略,只声明各个形参的类型,如MyComplex(int,int);成员函数的返回类型、函数名称、参数表

7、必须与成员函数原型的声明完全相同,而且必须指出每个形参的名字,必须在成员函数名前面加上类名,并且在类名与成员函数之间用∷间隔,如MyComplex::MyComplex(inta,intb)。接下来,是二元运算符的重载。二元运算符既可以作为类的成员函数重载,也可以作为类的友元或普通该函数重载。它们的区别是:作为类成员重载时只需要一个参数,作为类的友元或普通函数重载时需要两个参数;调用类的重载运算符时,作为类成员函数运算符的左参数必须是一个类对象,而作为友元或普通函数重载的运算符则无此限制。本实验采用的是第二种方式,作为类的友元函数重载。重载的运算符有+

8、、-、*、/,还有赋值运算符=,输入输出运算符<<、>>。用const限制函数的参数能够保证函

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。