0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

C++之操作重载符学习的总结(二)

电子设计 来源:电子设计 作者:电子设计 2020-12-24 16:26 次阅读

一、完善的复数类:

在上一篇文章里面我们已经提到了操作符重载的概念和使用,同时也举例了一个数学里面的复数操作,从一开始使用友元到使用操作符重载全局函数,再到使用操作符重载类成员函数,这样一步步演变而成我们最终实现了复数的实部加实部,虚部加虚部;而且当时我们只讲解了一个操作重载符“+”,所以为了完善学习体系,咋们今天继续把剩下的操作重载符总结完,以免知识体系零零散散。那么复数完善的操作符还有那些呢,其实很简单就能能想到,和对数学里面的实数操作一样,加减乘除肯定是少不了嘛,下面是汇总的操作符总结:

运算:+、-、*、/

比较:==、!=

赋值: =

求模: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++规定赋值操作符"="只能重载为成员函数

操作符重载不能改变原操作符的优先级

操作符重载不能改变操作数的个数

操作符重载不应改变操作符的原有语义

二、总结:

复数的概念可以通过自定义类实现

复数中的运算操作可以通过操作符重载实现

赋值操作符只能通过成员函数实现

操作符重载的本质为函数定义

审核编辑:符乾江
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 可编程逻辑
    +关注

    关注

    7

    文章

    514

    浏览量

    43948
  • C++
    C++
    +关注

    关注

    21

    文章

    2072

    浏览量

    73071
收藏 人收藏

    评论

    相关推荐

    c语言,c++,java,python区别

    操作系统、嵌入式系统等对性能要求较高的场景。C语言的语法相对简单,学习曲线较平缓,也是学习其他高级语言的入门语言。 C++
    的头像 发表于 02-05 14:11 736次阅读

    C++简史:C++是如何开始的

    的 MISRA C++:2023 博客系列的第部分。 在这篇博客中,我们将深入探讨 C++ 的历史、编程语言多年来的发展历程以及它的下一步发展方向。
    的头像 发表于 01-11 09:00 257次阅读
    <b class='flag-5'>C++</b>简史:<b class='flag-5'>C++</b>是如何开始的

    “+”操作符的使用技巧

    这篇写个平时易被忽略的小知识点,一元 + 操作符的使用技巧。
    的头像 发表于 12-28 13:27 301次阅读

    如何选择创建c语言和c++

    选择创建 C 语言和 C++ 都需要综合考虑多个因素。在决定使用哪种语言之前,我们需要对这两种语言的特点、优缺点、适用场景、学习成本等进行全面的了解和对比。下面是关于选择创建 C 语言
    的头像 发表于 11-27 15:58 341次阅读

    C/C++语言学习大全套

    电子发烧友网站提供《C/C++语言学习大全套.rar》资料免费下载
    发表于 11-18 14:33 0次下载
    <b class='flag-5'>C</b>/<b class='flag-5'>C++</b>语言<b class='flag-5'>学习</b>大全套

    Verilog基础:介绍几个常用的按位操作符

    操作符是对进制位进行操作的运算。以下是一些常用的位操作符
    的头像 发表于 11-09 10:59 868次阅读

    Verilog基础:几个常用的按位操作符

    操作符是对进制位进行操作的运算
    的头像 发表于 11-09 10:57 932次阅读

    C++之父新作带你勾勒现代C++地图

    为了帮助大家解决这些痛点问题,让大家领略现代C++美,掌握其中的精髓,更好地使用C++C++之父Bjarne Stroustrup坐不住了,他亲自操刀写就了这本《
    的头像 发表于 10-30 16:35 556次阅读
    <b class='flag-5'>C++</b>之父新作带你勾勒现代<b class='flag-5'>C++</b>地图

    C++程序设计精简版

    章 指针第 7 章 自定义数据类型 第 3 篇 基于对象的程序设计第 8 章 类和对象第 9 章 关于类和对象的进一步讨论第 10 章 运算重载 第 4 篇 面向对象的程序设计第 11 章 继承与派生第 12 章 多态性与虚函数第 13 章 输入输出流第 14 章
    发表于 10-09 07:26

    C++重载运算符重载函数详解

    在计算机程序设计中,运算重载(英语:operator overloading)是多态的一种。这里,运算(比如+,=或==)被当作多态函数,它们的行为随着其参数类型的不同而不同。运算
    发表于 09-20 17:14 547次阅读

    C语言中位运算的基础用法

    位运算是一组用于在进制数之间进行操作的运算
    发表于 08-21 14:52 375次阅读
    <b class='flag-5'>C</b>语言中位运算<b class='flag-5'>符</b>的基础用法

    C++文件操作

    C++文件操作
    的头像 发表于 07-21 10:52 931次阅读
    <b class='flag-5'>C++</b><b class='flag-5'>之</b>文件<b class='flag-5'>操作</b>

    c++STL算法(三)

    c++STL算法(三)
    的头像 发表于 07-18 15:00 962次阅读
    <b class='flag-5'>c++</b><b class='flag-5'>之</b>STL算法(三)

    C++STL算法()

    C++STL算法()
    的头像 发表于 07-18 14:49 757次阅读
    <b class='flag-5'>C++</b><b class='flag-5'>之</b>STL算法(<b class='flag-5'>二</b>)

    c++函数对象与内建函数

    重载函数调用操作的类,其对象常称之为函数对象。
    的头像 发表于 07-17 09:46 444次阅读
    <b class='flag-5'>c++</b><b class='flag-5'>之</b>函数对象与内建函数