用#define在一个某个头文件中定义一个常量 那么所有导入这个头文件的代码,里面的这个常量都将被覆盖。
eg:#define Tencent_APP_ID @"1104895873"
这里我们会把Tencent_APP_ID字符串替换为@"1104895873",不过这样我们定义出来的常量没有类型信息.假设这个指令声明在头文件中,那么所有引入这个头文件的代码,其Tencent_APP_ID都会被替换.
这是我们就想到了类型常量
static const NSInteger count = 1;
static const NSString *EOCViewControllerAnimationDuartion = 0.3;
// .m文件(实现文件,又称为编译单元)。若常量局限于“编译单元”,以"k"开头;若常量在类之外可见,通常以类名为前缀
static const NSTimeInterval kAnimationDuration = 0.3
如果想让外界访问到这个属性
// 头文件中 .h 文件
extern NSString *const EOCNotificationStringName;
// 实现文件 .m文件
NSString *const EOCNotificationStringName = @"Family";