2013-01-11 100 views
0

發生了最奇怪的事情。雖然我不認爲我在那類東西觸動你,突然它開始告訴我,它無法找到一個類數組...對象沒有找到屬性類型(自定義)xcode

下面是錯誤:

基本上它不能訪問可變數組中baseobject(自定義Car.h型) (語義問題:財產objectReadyForCoreDatabase的類型不CarPacket(假的對象中,因爲它被聲明))

if([baseObject.objectsReadyForCoreDataBaseInput count]<kLenght) 
      { 
} 

車包.H

#import <Foundation/Foundation.h> 
    #import "ResponsePacket.h" 

    @interface CarPacket : ResponsePacket 

    @property (nonatomic, copy) NSString *objectID; 
    @property (nonatomic, retain) NSMutableArray *objectsReadyForCoreDataBaseInput; 
    @property (nonatomic, assign) NSInteger timeStamp; 



@end 

這是奇怪,因爲相同的頁面,在這裏我得到的錯誤,如果我鍵入object.objectID它認識到,但不是object.objectReadyForCoreDataBaseInput(也只是突然停止工作)

請讓我知道如果您有任何想法...謝謝你

我試圖恢復以前的快照和它沒有任何效果...它仍然顯示錯誤(儘管我知道在那一天就沒有)

+0

當你說「它不識別」,後面說「它只是突然停止工作」,你必須更具體。編譯器警告?如果是這樣,哪個?運行應用程序時生成的異常?如果是這樣,控制檯上的信息究竟是什麼?除此之外,我不得不猜測'baseObject'指向的對象不是'CarPacket'。我傾向於在該代碼行中放置斷點,然後在調試器中檢查「baseObject」。 – Rob

+0

它不允許編譯 –

+0

語義問題:在CarPacket類型的對象中找不到屬性objectReadyForCoreDatabase(false,因爲它被聲明) –

回答

2

你沒有分享了你打電話的環境(並看到錯誤)。也就是說,我的猜測是以下兩件事之一:調用類不熟悉接收類(CarPacket),或者調用類不知道baseObject是CarPacket。

你從哪裏打電話?確保調用類導入標題。因爲我不知道你是從打電話呢,讓我們說這是從內部UnknownClass:

UnknownClass.m 

#import UnknownClass.h 
#import CarPacket.h // This should make your class familiar 

@implementation UnknownClass 

的另一件事是,你需要確保的時候你接觸到baseObject,你UnknownClass實例知道它正在處理一個CarPacket實例,例如:

- (void)someMethodOfUnknownClass 
{ 

CarPacket *baseObject = (CarPacket *)baseObject; // Cast baseObject if it hasn't been declared as a CarPack in scope... 

if([baseObject.objectsReadyForCoreDataBaseInput count]<kLenght) 
    { 
    } 

} 
+0

好吧,只是再試一次,它正在讀這個文件的舊版本(哪些不再存在),我如何讓它讀取新車包文件? –

+0

原來我仍然在捆綁中的舊文件,以便它正在閱讀該版本...,謝謝你的建議 –

相關問題