您的位置:首页 > 产品设计 > UI/UE

true false 与TRUE FALSE 的区别

2012-08-30 15:39 357 查看
BOOL 是window中的数据类型,BOOL的原型是typedef
long BOOL,所以

int
i=6;

BOOL b=(BOOL)i;

是可以的。

bool是C++中的一个关键字它可以有两种值true和false也都是关键字,所以

int i=6;

bool b=(bool)i;

会有警告。

通常状况下使用BOOL类型是要报错的必须要加上<windows.h>头文件才可以。

在C++中BOOL,TRUE,FALSE 和 bool ,true, false两组都可以用
原因是在以前的C++标准中,没有定义"bool"类型,因此,Microsoft使用了类型定义,定义了"bool"类型:

typedef int BOOL;

#define FALSE 0

#define TRUE 1

后来,C++标准对于C++作了扩充,定义了三个关键字,用于"bool"类型:bool , true, false

所以编码的时候大小写要一致用大写的就不用小写
true和false是最严谨的了,可以参考Exceptional C++,
真和假不是int或者其他类型可以代替的。bool的sizeof值是1byte,Win32编程里 typedef int BOOL,FALSE和false是不同类型。

强制类型转换是可以的。而如果要明确类型的不一样可以更严谨些

int i=6;

bool b = (i != 0);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: