类和对象
Posted mint510845604
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了类和对象相关的知识,希望对你有一定的参考价值。
四.实验结论
1.验证性实验部分
类:在面向对象程序设计中,程序模块是由类构成的。类是对逻辑上相关的函数与数据的封装。
对象:当定义了一个类之后,便可以定义该类的变量,这个变量就称为类的对象(或实例),这个定义的过程也称为类的实例化。
构造函数:构造函数的作用就是在对象被创建时利用特定的值构造对象,将对象初始化为一个特定的状态。构造函数在对象被创建的时候将会被自动调用。
复制构造函数: 复制构造函数是一种特殊的构造函数,具有一般构造函数的所有特征,其形参是本类的对象的引用。其作用是使用一个已经存在的对象(由复制构造函数的参数指定),去初始化同类的一个新对象。
析构函数:析构函数与构造函数的作用几乎正好相反,它用来完成对象被删除前的些清理工作,也就是专门做扫尾工作的。析构函数是在对象的生存期即将结束的时刻被自动调用的。它的调用完成之后,对象也就消失了,相应的内存空间也被释放。
2.编程实验部分
(1)习题4-11
#include <iostream> using namespace std; class rec { public: void setsize(int newL=0,int newW=0); void showarea(); private: int len,wide; }; void rec::setsize(int newL,int newW) { len=newL; wide=newW; } inline void rec::showarea() { cout<<len*wide<<endl; } int main() { rec myrec; myrec.setsize(3,2); myrec.showarea(); return 0; }
(2)习题4-20
#include <iostream> using namespace std; class Complex { public: Complex(float r1,float i1); Complex(float r2); void add(Complex &c); void show(); private: float r,i; }; Complex::Complex(float r1,float i1) { r=r1; i=i1; } Complex::Complex(float r2) { r=r2; } void Complex::add(Complex &c) { r+=c.r; i+=c.i; } void Complex::show() { if(i>0) cout<<r<<‘+‘<<i<<‘i‘; if(i=0) cout<<r; if(i<0) cout<<r<<‘-‘<<i<<‘i‘; } int main() { Complex c1(3,5); Complex c2=4.5; c1.add(c2); c1.show(); return 0; }
五、实验总结与体会
用内联函数可以节省函数调用时的时间开销。
当需要多次使用同功能的函数时,函数重载可以使得函数命名变得简单。
以上是关于类和对象的主要内容,如果未能解决你的问题,请参考以下文章