Macos 当使用更高版本的OS X中的符号时,应用程序崩溃

Macos 当使用更高版本的OS X中的符号时,应用程序崩溃,macos,Macos,我在OS X 10.7上运行了以下代码: NSLog(@"Start"); if (NSAccessibilityPriorityKey != NULL) { NSLog(@"%p", NSAccessibilityPriorityKey); } NSLog(@"End"); 代码在开始标记之后和到达结束标记之前崩溃SIGSEGV。根据标题,NSAccessibilityPriorityKey符号在10.9中引入: APPKIT_EXTERN NSString *const NSAcc

我在OS X 10.7上运行了以下代码:

NSLog(@"Start");
if (NSAccessibilityPriorityKey != NULL) {
    NSLog(@"%p", NSAccessibilityPriorityKey);
}
NSLog(@"End");
代码在开始标记之后和到达结束标记之前崩溃SIGSEGV。根据标题,NSAccessibilityPriorityKey符号在10.9中引入:

APPKIT_EXTERN NSString *const NSAccessibilityPriorityKey NS_AVAILABLE_MAC(10_9);

我的部署目标设置为10.6,所以我认为代码应该运行,只是符号可能为空。我做错了什么?

在检查弱链接字符串时,似乎必须使用&运算符:

if (&NSAccessibilityPriorityKey != NULL) { … }