⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 complex.cpp

📁 我学习C++ Primer Plus过程中写下的课后作业的编程代码
💻 CPP
字号:
// complex.cpp
#include <iostream>
#include "complex0.h"
namespace COMPLEX
{
	
	complex::complex()			//默认构造函数
	{
		real = 0.0;
		imaginary = 0.0;
	}
	complex::complex( double r, double i )		//自定义构造函数
	{
		real = r;
		imaginary = i;
	}

	complex::~complex()							//默认析构函数
	{
	}

	complex complex::operator + ( const complex & c )const	//重载'+'号
	{
		complex temp;
		temp.real = real + c.real;
		temp.imaginary = imaginary + c.imaginary;
		return temp;
	}
	
	complex complex::operator - ( const complex & c )const	//重载'-'号
	{
		complex temp;
		temp.real = real - c.real;
		temp.imaginary = imaginary - c.imaginary;
		return temp;
	}
	
	complex complex::operator * ( const complex & c )const	//重载'*'号
	{
		complex temp;
		temp.real = real * c.real -imaginary * c.imaginary;
		temp.imaginary = real * c.imaginary + imaginary*c.real;
		return temp;
	}
	
	complex complex::operator * (double x)const		//乘以实数
	{
		complex temp;
		temp.real = real * x;
		temp.imaginary = imaginary;
		return temp;
	}
	
	complex complex::operator ~()const	//共轭复数
	{
		complex temp;
		temp.real = real;
		temp.imaginary = -imaginary;
		return temp;
	}
	//friends
	complex operator * ( double x, const complex & c )	//友员函数实现实数与复数相乘
	{
		complex temp;
		temp.real = x * c.real;
		temp.imaginary = c.imaginary;
		return temp;
	}
	std::istream & operator >> ( std::istream & os, complex & c )
	{
		std::cout<<"real: ";
		os>>c.real;
		std::cout<<"imaginary:\n";
		os>>c.imaginary;
		return os;
	}
	
	std::ostream & operator << ( std::ostream & os, const complex & c )
	{
		os<<"("<<c.real<<","<<c.imaginary<<"i)\n";
		return os;
	}
}// end namespace COMPLEX

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -