一、完善的复数类:
在上一篇文章里面我们已经提到了操作符重载的概念和使用,同时也举例了一个数学里面的复数操作,从一开始使用友元到使用操作符重载全局函数,再到使用操作符重载类成员函数,这样一步步演变而成我们最终实现了复数的实部加实部,虚部加虚部;而且当时我们只讲解了一个操作重载符“+”,所以为了完善学习体系,咋们今天继续把剩下的操作重载符总结完,以免知识体系零零散散。那么复数完善的操作符还有那些呢,其实很简单就能能想到,和对数学里面的实数操作一样,加减乘除肯定是少不了嘛,下面是汇总的操作符总结:
运算:+、-、*、/
比较:==、!=
赋值: =
求模:modulus
2、各操作符重载的形式:
代码实现:
test.h头文件:
test.cpp文件:
main.cpp文件:
运行结果:
上面设计到一些数学知识,比如复数的乘法和除法运算:
乘法:(a+bi)(c+di)=(ac-bd)+(bc+ad)i
除法:(a+bi)/(c+di)=(ac+bd)/cc+dd +(bc-ad)/cc +dd
3、注意事项:
C++规定赋值操作符"="只能重载为成员函数
操作符重载不能改变原操作符的优先级
操作符重载不能改变操作数的个数
操作符重载不应改变操作符的原有语义
二、总结:
复数的概念可以通过自定义类实现
复数中的运算操作可以通过操作符重载实现
赋值操作符只能通过成员函数实现
操作符重载的本质为函数定义
审核编辑:符乾江
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
相关推荐
电子发烧友网站提供《C7000优化C/C++编译器.pdf》资料免费下载
发表于 10-30 09:45
•0次下载
在C语言的学习过程中,运算符的使用是不可忽视的重要环节。本文将继续深入探讨C语言中的运算符,重点介绍位运算
发表于 10-13 08:09
•194次阅读
用在变量之后时,它们会先返回变量的原始值,然后再进行递增或递减。 三元条件运算符 ( ?: ):这个运算符的求值顺序是从右到左。首先计算第三个表达式,然后根据第一个表达式的结果选择第二个或第三个表达式。 赋值运算
发表于 08-20 11:39
•699次阅读
电子发烧友网站提供《C++语言基础知识.pdf》资料免费下载
发表于 07-19 10:58
•7次下载
C++有多态与继承,但是很多人开始学习C++,有时候会面临一个常见问题,就是如何向下转型,特别是不知道具体类型的时候,这个时候就希望C++ 可以向Java或者Python中有insta
发表于 07-18 10:16
•534次阅读
用arm-xxx-gcc编译器进行编译,*.cpp文件会使用arm-xxx-g++编译器进行编译,STM32CubeMX生成文件都是*.c源文件,在不修改文件名后缀情况下,我现在是想在*.c源文件中使用c++特性(比如
发表于 04-25 06:15
操作系统、嵌入式系统等对性能要求较高的场景。C语言的语法相对简单,学习曲线较平缓,也是学习其他高级语言的入门语言。 C++:
发表于 02-05 14:11
•2237次阅读
Microsoft开发的一种面向对象的事件驱动编程语言。它的设计目标是简化编程过程,让初学者也能快速上手。与之相比,C++语言是一种通用的、面向对象的编程语言,其设计目标是提供高性能的系统级编程。 语法: VB语言的语法较为简单,使用了很多可读性强的关键词,如“
发表于 02-01 10:20
•2058次阅读
的 MISRA C++:2023 博客系列的第二部分。
在这篇博客中,我们将深入探讨 C++ 的历史、编程语言多年来的发展历程以及它的下一步发展方向。
发表于 01-11 09:00
•536次阅读
这篇写个平时易被忽略的小知识点,一元 + 操作符的使用技巧。
发表于 12-28 13:27
•508次阅读
C语言虽说经常和C++在一起被大家提起,但可千万不要以为它们是一个东西。现在我们常用的C语言是C89标准,C++是
发表于 12-07 14:29
•907次阅读
MyBatis的DAO能否重载? 在MyBatis中,DAO是数据访问对象的缩写,用于执行与数据库交互的操作。MyBatis的DAO可以重载,即可以定义多个具有不同参数的相同方法名的方法,以满足
发表于 12-03 11:51
•1234次阅读
/C++,本文将通过5个短视频为你介绍CodeArts IDE for C/C++的5大特性操作。 01 开发环境准备 开发环境准备省时省力,只需
发表于 11-29 17:40
•759次阅读
选择创建 C 语言和 C++ 都需要综合考虑多个因素。在决定使用哪种语言之前,我们需要对这两种语言的特点、优缺点、适用场景、学习成本等进行全面的了解和对比。下面是关于选择创建 C 语言
发表于 11-27 15:58
•569次阅读
C++是一种高级的、通用的编程语言,用于开发各种类型的应用程序。它是从C语言演变而来,也是一种静态类型语言,可以在不同的平台上进行开发。C++具有高度的灵活性和性能,并且广泛应用于游戏开发、桌面
发表于 11-27 15:56
•894次阅读
评论