4-11
#include<iostream>
using namespace std;
class Rectangle{ //定义矩形类
public: //公共成员接口
Rectangle(double i,double j); //构造函数
Rectangle(Rectangle &R); //复制构造函数
~Rectangle(); //析构函数
double area(double length,double width){
return length*width;
}; //计算矩形面积,内联函数
private: //私有成员接口
double length;
double width;
};
Rectangle::Rectangle(double i,double j){ //构造函数,定义数据类型
length = i;
width = j;
}
Rectangle::Rectangle(Rectangle &R){ //析构函数
length = R.length;
width = R.width;
}
Rectangle::~Rectangle() { }
int main(){
double length,width;
cout << "矩形的长 :" ; //输入长的值
cin >> length;
cout << "矩形的宽 :"; //输入宽的值
cin >> width;
Rectangle R1(length,width); //定义rectangle类的对象R1
cout << "矩形的面积 :" << R1.area(length,width) << endl;
return 0;
}
运行结果截图
4-20
#include<iostream> using namespace std; class Complex{ //定义复数类 public: //公共成员接口 Complex(double a,double b); //自定义构造函数 Complex(double a); //重载 void add(Complex &c); //加法 void show(); private: //私有成员接口 double i; double j; }; Complex::Complex(double a,double b){ //函数构造的实现 i=a; j=b; } void Complex::add(Complex &c){ //add函数 i+=c.i; j+=c.j; } void Complex::show(){ //show函数 cout<<i<<(j>0 ? '+':'-')<<j<<'j'<<endl; } Complex::Complex(double a){ i=a; j=0; } int main(){ //主函数,输入数据 Complex c1(3.0,5.0); Complex c2=4.5; c1.add(c2); c1.show(); return 0; }
运行结果
实验总结:
在编写代码过程中适当的注释可以让整体的思路显得很清晰
析构函数和构造函数的定义较为简单,进行多次实践后可以掌握
两题都有用到public(公共成员接口)private(私有成员接口)