复数类的示例(有求模过程)

#include<iostream>
#include<cmath>
using namespace std;
class complex  //创建一个复数类
{
private:
	int real, image;
	double model;
public:
	complex();               //无参构造函数(默认)
	complex(int r, int i);   //2参构造函数
	~complex()           //析构函数,顺序与构造函数相反,无参数和返回类型
	{
		cout << "~complex():" << real<<"+"<<image<<"i" << endl;
	}
	
	void Setr(int r = 1) { real = r; };//建立改写实部的接口
	void Seti(int r = 1) { image = r; };//建立改写虚部的接口
	void Setall(int r = 1, int  i = 1) { real = r; image = i; };//建立同时改写实部虚部的接口
	int Readr() { return real; };//建立读取实部的接口
	int Readi() { return image; };//建立读取虚部的接口
	double Readmod()             //建立求模函数
	{
		model = sqrt(real*real + image * image);
		return model; 
	};
	complex add(complex c)//类外声明用::
	{
		complex temp;
		temp.real = real + c.real;
		temp.image = image + c.image;
		return temp;
	}
	complex sub(complex c)
	{
		complex temp;
		temp.real = real - c.real;
		temp.image = image - c.image;
		return temp;
	}


};
complex::complex()
{
	real = 1; image = 1;
	cout << "complex() " << real << "_" << image << endl;
};
complex::complex(int r, int i)
{
	real = r; image = i;
	cout << "complex(int ,int ):" << real << "_"<<image << endl;
};


int main()
{
	
	complex c1, c2(2,5);
	c1.Setall(1,1);
	cout << c1.Readmod() << endl;
	
	c2.Seti(6);
	
	cout << c2.Readi ()<< endl;
	c2=c2.add(c1);
	cout << c2.Readi() << endl;

	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值