a=a+b 与a+=b 的一些对比
1、a=a+b的含义:变量a开辟一片内存单元,把某个数字存入到内存单元中,然后把这个数取出到CUP中进行计算(加b),然后存回到原内存单元中。
2、+=操作符会进行隐式自动类型转换,此处 a+=b隐式的将加操作的结果类型强制转换为持有结果的类型,而a=a+b则不会自动进行类型转换
3、
a += b直接在a中加了b
a = a + b则是用一个临时变量temp记录a的值,类似过程:
temp = a;
temp +=b;
a = temp;
多了2次拷贝
a=a+b,执行了加法操作后还有赋值操作。
a+=b,一步到位,效率高速度快。
然而现在的编译器都优化过了,基本没区别。
4、扩展类型class差别比较大
a = a+b要重载运算符+和=,先调用a.+(b)返回一个临时变量x,再调用a.=(x),性能影响大
a+=b的话,只需要+=这个运算符重载。
当然如果+重载写成A& operator +(const A& a);这样的话,不返回临时变量x,对性能影响不算很大,最多就=重载的时候多赋值了一次。
但是基础类型的话,a+b是会产生一个临时变量的!!
a=a+b 与a+=b 的一些对比相关推荐
- OpenAPI使用(swagger3),Kotlin使用swagger3,Java使用swagger3,gradle、Maven使用swagger3
OpenAPI使用(swagger3) demo见Gitte 一.背景及名词解释 OpenAPI是规范的正式名称.规范的开发工作于2015年启动,当时SmartBear(负责Swagger工具开发的公 ...
- 力扣每日一题——独一无二出现的次数
难度:简单 题目: 给你一个整数数组 arr,请你帮忙统计数组中每个数的出现次数. 如果每个数的出现次数都是独一无二的,就返回 true:否则返回 false. 示例 1: 输入:arr = [1,2 ...
- 大数据中用到的新的数据类型bigint、decimal、smallint、tinyint
在对比oracle数据库和大数据库的时候,发现了几个用以存放数字的新的类型bigint.decimal.smallint.tinyint,为了对比之间的不同,我进行了统计 bigint 可以精确的表示 ...
- 【Golang源码分析】Go Web常用程序包gorilla/mux的使用与源码简析
目录[阅读时间:约10分钟] 一.概述 二.对比: gorilla/mux与net/http DefaultServeMux 三.简单使用 四.源码简析 1.NewRouter函数 2.HandleF ...
- 使用python愉快地做高数线代题目~
今天接触到了python,发现真是极易上手啊!对比c语言是什么鬼东西= = 诶,等下,看完教学文章发现TA在下面写了这句话 如果做了前面的内容你可能已被吸引了,觉得c语言真的是废材! 不...不是的. ...
- 2022-2028年中国阻尼涂料市场研究及前瞻分析报告
[报告类型]产业研究 [报告价格]4500起 [出版时间]即时更新(交付时间约3个工作日) [发布机构]智研瞻产业研究院 [报告格式]PDF版 本报告介绍了中国阻尼涂料行业市场行业相关概述.中国阻尼涂 ...
- 2022-2028年中国TCO导电玻璃行业市场研究分析及前瞻规划报告
[报告类型]产业研究 [报告价格]4500起 [出版时间]即时更新(交付时间约3个工作日) [发布机构]智研瞻产业研究院 [报告格式]PDF版 本报告介绍了中国TCO导电玻璃行业市场行业相关概述.中国 ...
- 2022-2028年中国安防视频行业市场前景分析预测报告
[报告类型]产业研究 [报告价格]4500起 [出版时间]即时更新(交付时间约3个工作日) [发布机构]智研瞻产业研究院 [报告格式]PDF版 本报告介绍了中国安防视频行业市场行业相关概述.中国安防视 ...
- 2022-2028年中国茶几玻璃行业市场研究及前瞻分析报告
[报告类型]产业研究 [报告价格]4500起 [出版时间]即时更新(交付时间约3个工作日) [发布机构]智研瞻产业研究院 [报告格式]PDF版 本报告介绍了中国茶几玻璃行业市场行业相关概述.中国茶几玻 ...
- 2022-2028年中国产后修复行业市场研究及前瞻分析报告
[报告类型]产业研究 [报告价格]4500起 [出版时间]即时更新(交付时间约3个工作日) [发布机构]智研瞻产业研究院 [报告格式]PDF版 本报告介绍了中国产后修复行业市场行业相关概述.中国产后修 ...
最新文章
- 卷积神经网络(cnn) 手写数字识别
- 009 Android之ContentProvider
- 使用snmp4j实现Snmp功能(一)
- 1047 行 MySQL 详细学习笔记(值得学习与收藏)
- 数据结构函与算法之函数与递归
- 如何修改服务器标题,修改DEDECMS网页TITLE标签的方法
- thinkphp5 与 endroid 二维码生成
- Win10 Anaconda Prompt 快捷方式恢复
- 拼多多商品详情查询V1新版接口
- 报考建行考计算机专业知识资料,建设银行信息技术类考试都考什么,有没有以前......
- Ubuntu下如何使用编译使用john-1.9.0源码
- uniapp showToast
- hosts文件为空,仍然显示ERR_CONNECTION_RESET的解决方法(hosts.ics)
- 机器学习进阶——数据清洗
- java号码分身_电话号码分身
- 论文阅读技巧之三遍法
- 重构不是阳春白雪的高端玩意,而是码农编程利器
- 学完新概念英语4册,需要几年?
- 今日头条商业模式分析
- 中标麒麟桌面操作系统龙芯版系统安装盘(U盘)制作方法