什么是位掩码?
在代码中你会经常看到1<<3这样的代码,它叫位掩码。
字面看来是看不出来它真正的意义的,你要从二进制的角度来审视这段代码,它的意思是说向把1从最右边左移动3位,换句话说就是移动位操作。
define有啥坏处?
1、不做类型检查,就这一条就把宏给pass了。
define有啥好处?
1、预编译,快。就是通常所说的能提高编译效率。
2、方便,因为是全局性质的嘛。
3、在赋值的时候更安全,因为肯定会报错嘛。
CONST
1、做类型检查。
2、运行时需要占用内存空间。
3、做全局常量的时候,需要在.h中声明,在.m中定义。
enum有啥用?
1、只能用于整形。
2、能替代CONST和#define。
3、最好使用OC专用的那种NS_ENUM和NS_OPTION定义形式。