优秀的编程知识分享平台

网站首页 > 技术文章 正文

C++学习目标:最简单实用的布尔类型介绍

nanyue 2024-12-06 18:02:44 技术文章 8 ℃

在前两个学习目标中我们已经看到了布尔(bool)变量的用法:

它仅可以被赋值为truefalse,分别表达真值和假值。它可以被隐式转换成数值,true转换成1,而false转换成0。当然这种转换是不推荐的。

在C语言或比较老的C++代码里,还有一种布尔类型定义为BOOL(大写),在VS2010的库文件“wtypes.h”里可以看到,BOOL实质是长整型long,它也对应两个取值TRUE(大写)和FALSE(大写)。

写段代码实际使用下boolBOOL类型:

运行一下(Ctrl+F5)看看输出:

可以看出,boolBOOL是可以直接比较的,因为编译器将两者用10替代。但编程的实质是体现人对业务需求的设计实现,在实用C++中,是不推荐这么混用的。

最实用的建议:请尽量使用bool,可以极大避免使用BOOL变量不当导致的“变量值既非TRUE又非FALSE”问题。

很不幸的是,在VS2010库代码里有大量的BOOL类型存在,比如MFC代码里基本上所有布尔类型的函数返回值,成员变量均使用BOOL

不要失落,在C++标准库STL中,布尔类型使用的全是bool。[小鼓掌]请坚定不移地使用bool吧。

学习目标“最简单实用的布尔类型介绍”已完成[再见]

Tags:

最近发表
标签列表