写一个复数类Complex,(复数形如3.2+5.6i,2.9-1.3i,其中i*i=-1)。要求支持+-*/,++、--,到bool类型和string类型的转换,支持、运算符。

本文主要是介绍写一个复数类Complex,(复数形如3.2+5.6i,2.9-1.3i,其中i*i=-1)。要求支持+-*/,++、--,到bool类型和string类型的转换,支持、运算符。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

// ConsoleApplication1.cpp : 定义控制台应用程序的入口点。
//#include "stdafx.h"
#include <iostream>
using namespace std;class Complex
{float a;float b;
public:Complex():a(),b(){}Complex(const float& a, const float& b):a(a),b(b){}Complex operator+(const Complex& com2){return Complex((a+com2.a),(b+com2.b));}Complex operator-(const Complex& com2){return Complex((a-com2.a),(b-com2.b));}Complex operator*(const Complex& com2){return Complex((a*com2.a),(b*com2.b));}Complex operator/(const Complex& com2){return Complex((a/com2.a),(b/com2.b));}/*成员函数前置--:*/Complex& operator--(){--a;--b;return *this;}/*友元函数前置--:*///friend Complex& operator--(Complex& com)//{//	--com.a;//	--com.b;//	return com;//}/*成员函数后置--:*//*Complex operator--(int){Complex temp(*this);a--;b--;return temp;}*//*友元函数后置--:*/friend Complex operator--(Complex& com,int)//(Complex& com,int)中不加& 就不能改变自己的值{Complex temp(com);com.a--;com.b--;return temp;}Complex& operator=(const Complex& b)//必须是成员函数,与=相关的都必须是成员函数,还有[ ]和(){this->a=b.a;this->b=b.b;return *this;}friend ostream& operator<<(ostream&o,const Complex& com)//必须是友元函数{return o << com.a << " + " << com.b << "i";}friend istream& operator>>(istream& in,Complex& com)//必须是友元函数{return in >> com.a >> com.b ;//return in >> com.a >> " + " >> com.b >>"i"; 错误 没有这些符号的定义}//void show()//{//	char * str;//	int dec, sign, ndigits = 3; //	str = _fcvt_s(a, ndigits, &dec, &sign);//	printf("Original number; %f\n" , a) ; //	printf ("Converted string; %s\n",str);    //	printf ("Decimal place: %d\n" , dec) ; //	printf ("Sign: %d\n" , sign) ;           //	//str = fcvt(b, ndigits, &dec, &sign);//}
};int _tmain(int argc, _TCHAR* argv[])
{Complex a(1,5);Complex b(5,6);a=a+b; cout << a << endl;cout << --a << endl;cout << a-- << endl;cout << a << endl;Complex c;cout << "a:" << a << endl;cout << "c:" << c << endl;c=a--;cout << "c:" << c << endl;c=a;cout << "c:" << c << endl;cin >> c ;cout << "c:" << c << endl;c.show();system("pause");return 0;
}

这篇关于写一个复数类Complex,(复数形如3.2+5.6i,2.9-1.3i,其中i*i=-1)。要求支持+-*/,++、--,到bool类型和string类型的转换,支持、运算符。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/542551

相关文章

Python轻松实现Word到Markdown的转换

《Python轻松实现Word到Markdown的转换》在文档管理、内容发布等场景中,将Word转换为Markdown格式是常见需求,本文将介绍如何使用FreeSpire.DocforPython实现... 目录一、工具简介二、核心转换实现1. 基础单文件转换2. 批量转换Word文件三、工具特性分析优点局

MyBatis中的两种参数传递类型详解(示例代码)

《MyBatis中的两种参数传递类型详解(示例代码)》文章介绍了MyBatis中传递多个参数的两种方式,使用Map和使用@Param注解或封装POJO,Map方式适用于动态、不固定的参数,但可读性和安... 目录✅ android方式一:使用Map<String, Object>✅ 方式二:使用@Param

Python海象运算符:=的具体实现

《Python海象运算符:=的具体实现》海象运算符又称​​赋值表达式,Python3.8后可用,其核心设计是在表达式内部完成变量赋值并返回该值,从而简化代码逻辑,下面就来详细的介绍一下如何使用,感兴趣... 目录简介​​条件判断优化循环控制简化​推导式高效计算​正则匹配与数据提取​性能对比简介海象运算符

C语言逗号运算符和逗号表达式的使用小结

《C语言逗号运算符和逗号表达式的使用小结》本文详细介绍了C语言中的逗号运算符和逗号表达式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习... 在C语言中逗号“,”也是一种运算符,称为逗号运算符。 其功能是把两个表达式连接其一般形式为:表达

使用C#实现将RTF转换为PDF

《使用C#实现将RTF转换为PDF》RTF(RichTextFormat)是一种通用的文档格式,允许用户在不同的文字处理软件中保存和交换格式化文本,下面我们就来看看如何使用C#实现将RTF转换为PDF... 目录Spire.Doc for .NET 简介安装 Spire.Doc代码示例处理异常总结RTF(R

C# WebAPI的几种返回类型方式

《C#WebAPI的几种返回类型方式》本文主要介绍了C#WebAPI的几种返回类型方式,包括直接返回指定类型、返回IActionResult实例和返回ActionResult,文中通过示例代码介绍的... 目录创建 Controller 和 Model 类在 Action 中返回 指定类型在 Action

C# 空值处理运算符??、?. 及其它常用符号

《C#空值处理运算符??、?.及其它常用符号》本文主要介绍了C#空值处理运算符??、?.及其它常用符号,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录一、核心运算符:直接解决空值问题1.??空合并运算符2.?.空条件运算符二、辅助运算符:扩展空值处理

golang实现nacos获取配置和服务注册-支持集群详解

《golang实现nacos获取配置和服务注册-支持集群详解》文章介绍了如何在Go语言中使用Nacos获取配置和服务注册,支持集群初始化,客户端结构体中的IpAddresses可以配置多个地址,新客户... 目录golang nacos获取配置和服务注册-支持集群初始化客户端可选参数配置new一个客户端 支

python中的鸭子类型详解

《python中的鸭子类型详解》鸭子类型是Python动态类型系统的灵魂,它通过强调“行为”而非“类型”,赋予了代码极大的灵活性和表现力,本文给大家详细介绍python中的鸭子类型,感兴趣的朋友一起看... 目录1. 核心思想:什么是鸭子类型?2. 与“传统”静态类型语言的对比3. python 中无处不在

OFD格式文件及如何适应Python将PDF转换为OFD格式文件

《OFD格式文件及如何适应Python将PDF转换为OFD格式文件》OFD是中国自主研发的一种固定版式文档格式,主要用于电子公文、档案管理等领域,:本文主要介绍OFD格式文件及如何适应Python... 目录前言什么是OFD格式文档?使用python easyofd库将PDF转换为OFD第一步:安装 eas