【发布时间】:2012-11-24 23:30:36
【问题描述】:
有时我喜欢浏览 Apple 源代码,看看专业人士是如何做到的,有时我会学到一两件事。我现在正在查看 NSManagedObjectContext.h 的头文件,以及它们的全局变量,比如 NSManagedObjectContextDidSaveNotification,它们是这样声明的:
COREDATA_EXTERN NSString * const NSManagedObjectContextDidSaveNotification;
而通常只是:
extern NSString * const NSManagedObjectContextDidSaveNotification
Cmd+点击 COREDATA_EXTERN 将我带到它的定义:
#define COREDATA_EXTERN extern
所以COREDATA_EXTERN 正好等于extern,所以我的问题是,他们为什么不直接使用extern?
【问题讨论】: