我刚刚在XCode 3.2上创建了一个新的Cocoa项目。我正在Snow Leopard上运行它。
当我将其构建为10.6时,它可以正常工作,但如果我将活动SDK更改为10.5,则会出现以下错误:
cannot find protocol declaration for 'NSApplicationDelegate'
我刚刚在XCode 3.2上创建了一个新的Cocoa项目。我正在Snow Leopard上运行它。
当我将其构建为10.6时,它可以正常工作,但如果我将活动SDK更改为10.5,则会出现以下错误:
cannot find protocol declaration for 'NSApplicationDelegate'
NSApplicationDelegate是一个自10.6版本起的新协议。我猜测你出现了错误,可能是因为你的应用代理实现了这个协议。我不确定这是否是最佳实践,但你可以考虑使用预处理器来帮助你:
#if (MAC_OS_X_VERSION_MAX_ALLOWED <= MAC_OS_X_VERSION_10_5)
@interface MyAppDelegate : NSObject
#else
@interface MyAppDelegate : NSObject <NSApplicationDelegate>
#endif