为了账号安全,请及时绑定邮箱和手机立即绑定

求教关于bool型的++,--!

求教关于bool型的++,--!

富国沪深 2021-10-06 20:07:57
为什么C++中,bool型数据可以用++,比如bool a;a++;是完全可以的,但是bool b;b--;却不能编译?
查看完整描述

2 回答

?
蓝山帝景

TA贡献1843条经验 获得超7个赞

这个是编译器规定的啦, boo b = 0 或者b =1;b++以后b都是以1
但b--可能会造成负数,所以C++里面没有重载--这个操作符。

查看完整回答
反对 回复 2021-10-10
?
白衣非少年

TA贡献1155条经验 获得超0个赞

bool类型对true或false的判定标准是0值,并不是什么0和1,负值也是有意义的.
对于bool类型的研究,给LZ一个测试程序自己研究看看

#include<iostream>
using namespace std;
int main()
{
bool b = -1;
if(b)

cout << "ok!" << endl;
b = b -(+) 1;
if(b)
cout << "error!" <<endl;
return 0;
}

把b = b - 1换成 b = b + 1看看,你就会有所了解了



查看完整回答
反对 回复 2021-10-10
  • 2 回答
  • 0 关注
  • 280 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信