我有一個類abcParser其中我有一個數組arrayXYZ。現在我需要在的viewController使用此陣..當我做到這一點,提供了一個錯誤.. arrayXYZ未申報需要在另一個類中使用數組..錯誤是arrayXYZ未聲明!
我在繼承中號較弱,請幫忙! 謝謝!!
我有一個類abcParser其中我有一個數組arrayXYZ。現在我需要在的viewController使用此陣..當我做到這一點,提供了一個錯誤.. arrayXYZ未申報需要在另一個類中使用數組..錯誤是arrayXYZ未聲明!
我在繼承中號較弱,請幫忙! 謝謝!!
聲明中ABCParser一個功能,您可以檢索數組,像這樣:
-(NSArray *)arrayXYZ:(NSString *)anArgument{
NSArray *array = [NSArray arrayWithObject:anArgument];
return array;
}
編輯:
好了,好像我們需要實例等一點點教訓...
現在,這些加號(+)和減號( - )的方法名稱旁邊的跡象...
Plus是一個類的方法。它可以在沒有實例化的情況下使用,但要明白當你使用這些時變量不能被繼承。
實例方法要求您實例化一個新對象,然後要求它執行方法。
ABCParser *parser = [[ABCParser alloc] init];
這將創建一個新的ABCParser「實例」,並使用名稱「parser」創建一個指向它的指針。這一切都很好,很棒。
當我們希望這個新的解析器對象做什麼,我們告訴它作爲正常:
NSArray *myNewArray = [parser arrayXYZ];
所以 - 如果你有你的類的實例,這樣做:
ABCParser *parser = [[ABCParser alloc] init];
[parser generateArrayXYZ];
NSArray *array = [parser getArrayXYZ];
這會給你一個你可以使用的對象。這需要一些習慣,但你會學到的。如果您需要任何進一步的解釋,只需發佈:)
我應該如何從viewController調用該函數? – Zaraki 2011-02-01 10:53:23
您是否已將@property和@syntesize添加到abcParser中的NSArray變量中?
這聽起來像你對objective-c中面向對象的方法缺乏正確的理解,我建議你閱讀「Learning Objective-C:A primer」http://bit.ly/a3pl89和「The Objective-c programming語言「http://bit.ly/g1s0Iu – Robin 2011-02-01 10:35:41