写一个复数类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

相关文章

C#实现将Excel表格转换为图片(JPG/ PNG)

《C#实现将Excel表格转换为图片(JPG/PNG)》Excel表格可能会因为不同设备或字体缺失等问题,导致格式错乱或数据显示异常,转换为图片后,能确保数据的排版等保持一致,下面我们看看如何使用C... 目录通过C# 转换Excel工作表到图片通过C# 转换指定单元格区域到图片知识扩展C# 将 Excel

Java字符串处理全解析(String、StringBuilder与StringBuffer)

《Java字符串处理全解析(String、StringBuilder与StringBuffer)》:本文主要介绍Java字符串处理全解析(String、StringBuilder与StringBu... 目录Java字符串处理全解析:String、StringBuilder与StringBuffer一、St

C++使用printf语句实现进制转换的示例代码

《C++使用printf语句实现进制转换的示例代码》在C语言中,printf函数可以直接实现部分进制转换功能,通过格式说明符(formatspecifier)快速输出不同进制的数值,下面给大家分享C+... 目录一、printf 原生支持的进制转换1. 十进制、八进制、十六进制转换2. 显示进制前缀3. 指

使用Python开发一个带EPUB转换功能的Markdown编辑器

《使用Python开发一个带EPUB转换功能的Markdown编辑器》Markdown因其简单易用和强大的格式支持,成为了写作者、开发者及内容创作者的首选格式,本文将通过Python开发一个Markd... 目录应用概览代码结构与核心组件1. 初始化与布局 (__init__)2. 工具栏 (setup_t

MySQL 中查询 VARCHAR 类型 JSON 数据的问题记录

《MySQL中查询VARCHAR类型JSON数据的问题记录》在数据库设计中,有时我们会将JSON数据存储在VARCHAR或TEXT类型字段中,本文将详细介绍如何在MySQL中有效查询存储为V... 目录一、问题背景二、mysql jsON 函数2.1 常用 JSON 函数三、查询示例3.1 基本查询3.2

Java中Date、LocalDate、LocalDateTime、LocalTime、时间戳之间的相互转换代码

《Java中Date、LocalDate、LocalDateTime、LocalTime、时间戳之间的相互转换代码》:本文主要介绍Java中日期时间转换的多种方法,包括将Date转换为LocalD... 目录一、Date转LocalDateTime二、Date转LocalDate三、LocalDateTim

Java String字符串的常用使用方法

《JavaString字符串的常用使用方法》String是JDK提供的一个类,是引用类型,并不是基本的数据类型,String用于字符串操作,在之前学习c语言的时候,对于一些字符串,会初始化字符数组表... 目录一、什么是String二、如何定义一个String1. 用双引号定义2. 通过构造函数定义三、St

Python实现AVIF图片与其他图片格式间的批量转换

《Python实现AVIF图片与其他图片格式间的批量转换》这篇文章主要为大家详细介绍了如何使用Pillow库实现AVIF与其他格式的相互转换,即将AVIF转换为常见的格式,比如JPG或PNG,需要的小... 目录环境配置1.将单个 AVIF 图片转换为 JPG 和 PNG2.批量转换目录下所有 AVIF 图

Pydantic中Optional 和Union类型的使用

《Pydantic中Optional和Union类型的使用》本文主要介绍了Pydantic中Optional和Union类型的使用,这两者在处理可选字段和多类型字段时尤为重要,文中通过示例代码介绍的... 目录简介Optional 类型Union 类型Optional 和 Union 的组合总结简介Pyd

详解如何通过Python批量转换图片为PDF

《详解如何通过Python批量转换图片为PDF》:本文主要介绍如何基于Python+Tkinter开发的图片批量转PDF工具,可以支持批量添加图片,拖拽等操作,感兴趣的小伙伴可以参考一下... 目录1. 概述2. 功能亮点2.1 主要功能2.2 界面设计3. 使用指南3.1 运行环境3.2 使用步骤4. 核