Robin Chow's C++ Blog

 

[导入]Exception C++ 之 18

C++ 中 bool 是一个基本类型,可以通过各种方法来模拟它,但是都存在不同的缺陷:
  1. 使用 typedef 模拟,bool 不允许重载。
  2. 使用 #define,bool 不允许重载且通常破坏了 #define。
  3. enum bool允许重载但在条件表达式中不能进行自动类型转换。bool b = (i == j)是错误的,因为 int 不能隐含地转换成 enums。
  4. bool 类允许重载但不能让 bool 对象在条件中作测试,除非它能提供自动转换到基本类型,但是提供自动转换却通常会干扰函数重载解析过程。

文章来源:http://my.donews.com/robinchow/2007/01/15/bszvusphgepqbphvticopjkpfadfapccibyd/

posted on 2007-10-23 20:49 Robin Chow 阅读(64) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


导航

统计

常用链接

留言簿(1)

随笔分类

随笔档案

搜索

最新评论

阅读排行榜

评论排行榜