C++编程规范之26:保持重载操作符的自然语义-阿里云开发者社区

开发者社区> 龙盛国际> 正文

C++编程规范之26:保持重载操作符的自然语义

简介:
+关注继续查看

摘要:

    程序员讨厌意外情况:只在有充分理由时才重载操作符,而且应该保持其自然语义;如果做到这一点很困难,那么你可能已经误用了操作符重载。

    虽然任何人都会同意不应该在operator+的实现中实现减法操作,但是还有另外一些微妙的情况存在。应该保持操作符正常的语义,这样的程序才能保证别的人员能读懂你的程序,否则你的程序只有你自己能读懂。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
《并行计算的编程模型》一3.6.2 fence和quiet:RMA操作排序
本节书摘来华章计算机《并行计算的编程模型》一书中的第3章 ,第3.6.2节, [(美)帕万·巴拉吉(Pavan Balaji)编著;张云泉等译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
890 0
《并行计算的编程模型》一3.8 原子内存操作
本节书摘来华章计算机《并行计算的编程模型》一书中的第3章 ,第3.8节, [(美)帕万·巴拉吉(Pavan Balaji)编著;张云泉等译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
764 0
关于C++中操作符重载的疑问 :四个运算符=, ->, [], ()不可以重载为全局函数(友员函数)
转载自:http://blog.csdn.net/u014610226/article/details/47679323     以下是对C++中不能重载为友元函数的四个运算符进行了详细的分析介绍,需要的朋友可以过来参考下   C++规定有四个运算符 =, ->, [], ()不可以是全局域中的重载(即不能重载为友员函数),这是为什么呢?现在先说说赋值运算符“=”的重载C++规定赋值运算符“=”只能重载为类的非静态成员函数,而不可以重载为类的友元函数。
1133 0
SAS学习笔记之《SAS编程与数据挖掘商业案例》(3)变量操作、观测值操作、SAS数据集管理
SAS学习笔记之《SAS编程与数据挖掘商业案例》(3)变量操作、观测值操作、SAS数据集管理 1. SAS变量操作的常用语句 ASSIGNMENT 创建或修改变量 SUM 累加变量或表达式 KEEP 规定在数据集中保留的变量 DROP 规定在数据集中删除的变量 ARRAY 定义一个数组 RENAME
1389 0
C语言项目开发-项目架构和编程命名规范
一个项目的流程: 1、公司市场人员与客户交流,了解客户、引导客户使用公司最优资源并产出一份市场需求文档 2、公司需求人员(BA)与客户交流,了解客户需求并产出一个软件需求文档 3、项目经理、开发小组成员、需求人员(BA)一起开一个需求评审会议,对不合理的地方,    打回给BA,再由BA与客户沟通 4、程序员接到和充分了解软件需求文档后产生软件设计文档(包括概要设计文档和详细设计文档,    涉及到数据库的还需要进行数据库的设计) 5、程序员根据设计文档进行编码、调试、打包发布。
1101 0
+关注
龙盛国际
南京师范大学虚拟地理环境教育部重点实验室,研究方向为地图综合,并行计算和云计算相关领域。 从事电子地图开发,室内导航开发。 QQ:592701357
211
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载