我想问一下在 Objective C 项目中使用FOUNDATION_EXPORT
代替extern
的原因是什么。
我已经检查了this question并且使用FOUNDATION_EXPORT
获得了高达340分(第一名),而使用extern
只获得了74分(第二名)。
有人可以解释原因吗?使用FOUNDATION_EXPORT
代替extern
是否有任何实际原因?
谢谢!
答案 0 :(得分:161)
如果您查看NSObjCRuntime.h(在Foundation中),您会看到FOUNDATION_EXPORT
编译为C中的extern
,C ++中的extern "C"
以及Win32中的其他内容。所以,它更兼容。对于大多数项目,这没有任何区别。