本文主要是介绍BOOL、bool、Boolean、NSCFBoolean 的区别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
BOOL、bool、Boolean、NSCFBoolean 的区别
- BOOL、bool、Boolean、NSCFBoolean 的区别
BOOL、bool、Boolean、NSCFBoolean 的区别
Name | Typedef | Header | True Value | False Value |
---|---|---|---|---|
BOOL | signed char | objc.h | YES | NO |
bool | _Bool (int ) | stdbool.h | true | false |
Boolean | unsigned char | MacTypes.h | TRUE | FALSE |
NSNumber | __NSCFBoolean | Foundation.h | @(YES) | @(NO) |
CFBooleanRef | struct | CoreFoundation.h | kCFBooleanTrue |
不要尝试着将 BOOL 转换成 bool,也不要直接将 Boolean 赋值给 BOOL。
Boolean 转 BOOL 的方法:
Boolean a = false;
BOOL b = [(NSNumber *)a boolValue];
这篇关于BOOL、bool、Boolean、NSCFBoolean 的区别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!