gpt4 book ai didi

iphone - 如何解决发送到类的无法识别的选择器?

转载 作者:行者123 更新时间:2023-12-03 19:32:18 25 4
gpt4 key购买 nike

我的问题类似于 This SO question ,但主要区别在于我使用的是类方法。一些代码:

OpenFeint+private.h

@interface OpenFeint (Private)
// ...
+ (void) createSharedInstance;

OpenFeint+private.mm

+ (void) createSharedInstance
{
//...
}

OpenFeint.mm

+ (void) initializeWithProductKey:(NSString*)productKey 
andSecret:(NSString*)productSecret
andDisplayName:(NSString*)displayName
andSettings:(NSDictionary*)settings
andDelegates:(OFDelegatesContainer*)delegatesContainer
{
[OpenFeint createSharedInstance];
// ...

MyApp.mm:

// ...
#import "OpenFeint.h"
// ...
[OpenFeint initializeWithProductKey: OF_PRODUCT_KEY
andSecret: OF_PRODUCT_SECRET
andDisplayName: OF_DISPLAY_NAME
andSettings: openFeintSettings
andDelegates: [OFDelegatesContainer containerWithOpenFeintDelegate: self]];

错误是:

2010-07-22 11:30:15.239 MyApp[20210:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[OpenFeint createSharedInstance]: unrecognized selector sent to class 0x1cdb1c'
*** Call stack at first throw:
(
0 CoreFoundation 0x02d6f919 __exceptionPreprocess + 185
1 libobjc.A.dylib 0x02ebd5de objc_exception_throw + 47
2 CoreFoundation 0x02d714eb +[NSObject(NSObject) doesNotRecognizeSelector:] + 187
3 CoreFoundation 0x02ce1116 ___forwarding___ + 966
4 CoreFoundation 0x02ce0cd2 _CF_forwarding_prep_0 + 50
5 MyApp 0x0002844d +[OpenFeint initializeWithProductKey:andSecret:andDisplayName:andSettings:andDelegates:] + 48
// ...

一切都编译和链接得很好,但我遇到了这个愚蠢的错误。

最后一件事——所有 OpenFeint 的东西都是一个静态库,是的,它也编译和链接。这是我的第一个静态库,所以我可能错过了一些重要的步骤。有什么线索吗?

谢谢!

最佳答案

嗯,我好像有found a workaround ,但我不确定这是否是正确的修复。我添加了链接器标志 -all_load (除了 -ObjC 之外),现在似乎一切正常。

问题修订/添加:这是“合法”修复吗?还有更好的吗?

关于iphone - 如何解决发送到类的无法识别的选择器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3312297/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com