您的位置:首页 > 编程语言 > C语言/C++

【c++】实现一个复数类

2015-04-25 11:34 537 查看
// 实现一个复数类(complex)
//要求:1:实现不带参 / 带参数 /带默认参数的几种构造函数。
//      2:实现拷贝构造 / 析构函数。

#include <iostream>
using namespace std;

// 带参数的构造函数
class complex
{
private:
double _real;
double _image;
public:
void print();
complex(double _r, double _i);
~complex();
};

complex::complex(double _r, double _i)
{
_real = _r;
_image = _i;
cout<<"the parameterless constructor"<<endl;
}

/* 不带参数的构造函数
class complex
{
private:
double _real;
double _image;
public:
void print();
complex();
~complex();
};

complex::complex()
{
_real = 0;
_image = 0;
cout<<"with no arguments constructor"<<endl;
}*/

/* 带默认参数的构造函数
class complex
{
private:
double _real;
double _image;
public:
void print();
complex(double _real = 0,double _image = 0);
~complex();
};

complex::complex(double _r, double _i)
{
_real = _r;
_image = _i;
cout<<"with the default constructor"<<endl;
}*/

/* 拷贝构造
class complex
{
private:
double _real;
double _image;
public:
void print();
complex(double _r, double _i)
{
_real = _r;
_image = _i;
}
complex(complex const & comple);
~complex();
};

complex::complex(complex const & comple)
{
_real = comple._real;
_image = comple._image;
cout<<"copy structure"<<endl;
}*/

complex::~complex()
{
cout << "destructor" << endl;
}

void complex::print()
{
cout << "复数是:" << _real << "+" <<_image << "i" << endl;
}

int main()
{
double a, b;
//double a;
cout << "请输入两个数:";
cin >> a >> b;
//cin >> a;
//complex comp(a);
complex comp(a,b);
//complex comp(1, 2);
//complex comp;
//complex comp1(comp);
comp.print();
//comp1.print();
return 0;
}








内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: