異なるクラスを介して値を取得することに関する基本的な質問があります。 私は配列を塗りつぶすclassAを持っています(もし私がそれを印刷すると空ではありません)。 LATER in class Bこの配列をロードしたい:私はクラスAの配列を返すクラスAの関数を呼び出します。ただし、クラスBでは、新しい配列を呼び出すとnullになります。 私は少し混乱しています。なぜなら、私は配列のすべての値を保持していると思うからですが、まだnullです。私はまた多くの可能性を試しました。私はその基本的なOOP構文の誤りは私が生成すると思いますか?2つのクラス間のメッセージ
//CLASS_A.h
@interface classA {
NSMutableArray* buoyArray;
}
@property (nonatomic, retain) NSMutableArray * buoyArray;
-(NSMutableArray*)getArray:(NSMutableArray*)_array;
//CLASS_A.m
...
-(NSMutableArray*)getArray:(NSMutableArray*)_array {
_array=buoyArray;
return _array;
}
//CLASS_B.h
#import "CLASS_A.h"
@class classA;
@interface classB ...
classA *mapSource;
NSMutableArray * buoyArray;
}
@property(nonatomic,retain) classA *mapSource;
//CLASS_B.m
buoyArray=[mapSource getArray:buoyArray];
NSLog(@"%@",buoyArray);
あなたは、各クラスが同じ配列を指すようにしたい、またはそれぞれが独自のコピーを持っている必要がありますか? – GarlicFries
は基本的に配列のコピーです。私は同じ名前の別のクラスの配列のコピーを考えました。 –