在Xcode 3.2(在Snow Leopard上)构建10.5错误

Jor*_*rge 15 xcode osx-leopard target

我刚刚在XCode 3.2上创建了一个新的Cocoa项目.我在Snow Leopard中运行它.

当我为10.6构建它时,它工作正常,但如果我将活动SDK更改为10.5,我会收到此错误:

cannot find protocol declaration for 'NSApplicationDelegate'
Run Code Online (Sandbox Code Playgroud)

nal*_*all 33

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
Run Code Online (Sandbox Code Playgroud)

  • Thanx这对我有用.豪尔赫,你需要接受这个答案! (3认同)