2009-10-13 55 views
0

有没有人知道为什么这段代码在OS 3.0中产生这个错误而不是OS 2.2.1?适用于OS 2.2.1,但不适用于OS 3.0:错误:存取器的类型?

NSUInteger aCount = [serverBrowser.servers count]; 

错误:存取器的类型不匹配的属性“服务器”

ServerBrowser.h的类型如下定义和serverBrowser在.M合成的上方。

#import <Foundation/Foundation.h> 

    @class ServerBrowserDelegate; 

    @interface ServerBrowser : NSObject { 
     NSMutableArray* servers; 
     id<ServerBrowserDelegate> delegate; 
    } 

    @property(nonatomic,readonly) NSArray* servers; 


    @end 

在此先感谢您的帮助。非常感激。 乔丹

回答

0

它做与您提供的@propertyservers阵列作为NSArray*的事实,但声明后盾实例变量作为NSMutableArray*。 OS 3.0编译器可能会带有比2.2.1更严格的编译器设置。尝试转换为:

@property(nonatomic,readonly) NSMutableArray *servers;
+0

绝对正确,我不能相信我没有抓住(微笑)。因为它在2.2.1中工作,所以我挂断了代码。好的@Tim。干杯! – Jordan 2009-10-13 02:07:26

相关问题