C++里那只无形的手
来源:互联网 发布:iis php 配置 编辑:程序博客网 时间:2024/04/29 22:49
在编程过程中我们总是能遇到一些莫名奇妙的问题,先来看个有趣的列子。
大家可以想想结果是什么?为什么会这样呢,就是因为byte类型是8位,最大数位256了,超了之后就从头再来。c++是一个对数据类型有着非常严格检查的语言。在进行操作过程中要时刻牢记,数据在干什么,调用谁的操作符。那些地方会进行隐式的转换呢?最多的就是在传值过程中,通常我们将短数据类型转换为长数据类型没有问题,不足位填充0就可以了。那长数据转换为段数据类型只能忍痛割爱将超出部分拿掉。这就是数据切片,我们在c++里,时时刻刻都在创造新的数据类型,在我们传值,转换过程中一定要注意。当然了传递指针问题不大。
今天主要说说数据对象操作的隐式转换问题,在下面的代码里我重载了操作符*。首先这个类的对象相互调用对于乘法交换律没有什么问题了。可是和一个整形可以吗?注释的最后一行就是问题行。为什么第一行可以,下面一行不行呢。让我们来分析第一行的过程。
相当于上面这样的操作,所以可以正常编译通过,而下面一行就是直接调用int的*操作符,自然编译器是不能通过的。在这里要牢记,编译器可以隐式的转换参数表里列出的参数,而不会对成员变量进行隐式的转换。
- C++里那只无形的手
- 有关测试的思考(1):决定软件测试的那只无形的手
- 无形的力量,有形的手
- 搜狗漏洞事件背后的那只手
- 别指望别人那只手
- 不要作温水里的那只青蛙
- 不要作温水里的那只青蛙
- 不要作温水里的那只青蛙
- 不要作温水里的那只青蛙
- 不要作温水里的那只青蛙
- 不要作温水里的那只青蛙
- 对象背后的那只看不见的手——软件世界的有神论
- 有形之手 无形之手 案例
- 朋友圈里的无形装逼,最为致命
- 只牵你的手~
- 有形之手 无形之后案例2
- 和你结婚的人,就是厨房里的那只老鼠
- 和你结婚的人,就是厨房里的那只老鼠
- 貘
- android内存问题
- 说说字符集和编码
- 如何读取多个文件,文件后缀名不一致,不过类似source.1 source.2 source.3等
- Fuck work
- C++里那只无形的手
- 2010.11.10少了程式人员的自我测试Checklist
- Android网络相关
- AppBox2dDemo分析
- QT 模态对话框
- 恢复“快速启动栏”里丢失的“显示桌面”图标
- 皇冠
- 工作者线程间消息传递
- SQL中CHARINDEX和PATINDEX详解