非常感谢!

解决方案 »

  1.   

    bool是c中的关键字 取值为true和false
    BOOL是布尔类型 ,取值为 TRUE 和FALSE   它在头文件中的定义为  typedef int BOOL ;
    BOOLEAN 在头文件中定义为 typedef unsigned char BOOLEAN ;也就是 无符号字符 类型 ;
    boolean是JAVA中的类型  使用方法同bool 相同
      

  2.   

    大小不一样,一个char,一个int,但是都是用在0,1这种情形.只不过一般最好类型统一
      

  3.   

    在C++中bool占一个字节,BOOL占四个字节可以通过sizeof来测试
      

  4.   


    需要注意的是,bool只在C++中有,标准C中并没有bool,在C99中有_Bool布尔类型。
    typedef int BOOL;
    typedef BYTE BOOLEAN;typedef unsigned char BYTE;
    boolean在一些如COM中有相应的定义(VT_BOOL)。
      

  5.   

    按照需要吧。如果是只用在c++语言的用bool就够了。如果是需要跨语言的,那么可以用BOOL。其他的boolean和BOOLEAN也是按照各个平台不一样,为了兼容统一格式,需要定义一下使用。
      

  6.   

    我是楼主,还想请问一下我用VC++时,比如选择一个MFC文档,系统帮我自动生产的代码中,都是用的BOOL类型,而我自己写代码都是习惯用bool型。
    这两个严格来说能比较相等或隐式转换吗?
      

  7.   

    这两个严格来说能比较相等或隐式转换吗?
    ============
    应该是不能吧,毕竟BOOL和bool不是同一个类型,BOOL其实不过是Win32下的一个宏而已,它实际上是int型的
      

  8.   


    能够隐式转换,但一般来说,最好就是统一一下比较好。毕竟bool只占一个字节,而BOOL是4个字节的。而且BOOL 的TRUE 定义为1 而bool 的 true 定义为非0.还是有区别的。
      

  9.   

    bool的true是非0,具体值并没有被定义,因此,两个之间的隐式转换不够安全的,应该避免这样使用。