#include <iostream>
using namespace std;
class point
{
public:
point(double x0,double y0);
~point();
double getm()
{
return x*y;
}
private:
double x;
double y;
};
point::point(double x0,double y0):x(x0),y(y0) {cout<<"矩形面积为: "<<endl;}
point::~point(){}
int main()
{
double jlong,jshort;
cout<<"请输入矩形的长和宽 "<<endl;
cin>>jlong>>jshort;
point p1(jlong,jshort);
cout << p1.getm() << endl;
return 0;
}
不知是什么原因,对于某些数值,计算结果的精度相对于计算器总会缺少一位(四舍五入)
#include <iostream>
using namespace std;
class Complex
{
public:
Complex();
Complex(double r0,double i0);
Complex(double r0);·
~Complex();
void add(Complex &c)// 因为c2是Complex类,所以需要用Complex定义一个参数,不过是否用引用类型无关紧要
{
real+=c.real;
imaginary+=c.imaginary;
}
void show()
{
cout<<real<<(imaginary>0?'+':'-')<<imaginary<<"i"<<endl;
}
private:
double real;
double imaginary;
};
Complex::Complex(){};//默认构造函数和析构函数在这个程序中并不是必需的(虽然编译时会自动添加缺省函数),但活用它们会起到意想不到的效果
Complex::Complex(double r0,double i0):real(r0),imaginary(i0){}
Complex::Complex(double r0):real(r0),imaginary(0){}//这里我认识到,形式不同仅仅表示不同的赋值方式,不需要因此取出变量单独赋值(实际上这也难以实现)
Complex::~Complex(){}
int main()
{
Complex c1(3,5);
Complex c2=4.5;
c2.add(c1);
c2.show();
return 0;
}
上面两个程序的功能可以用非常简单的代码实现,但是通过实际编写可以知晓
类中的变量是无法直接使用的,这也是类最大的作用
这实现了实现与使用的分离,一定程度上也增强程序的安全性