私はその後、私は "" 変数classCArrayを設定する、クラスAのインスタンス "A" を作成し、 "B" ClassBのの(インスタンスにa.classArrayを渡す三クラスA、BおよびCObjective-Cクラスインスタンス変数をオブジェクト参照なしの別のクラスインスタンス変数に渡すにはどうすればよいですか?
@interface ClassA
@property (nonatomic,strong) NSMutableArray *classCArray;
@end
@implementation ClassA
...
@end
@interface ClassB
@property (nonatomic,strong) NSMutableArray *classCArray;
@end
@implementation ClassB
...
@end
@interface ClassC
@property (nonatomic,strong) NSString *name;
@end
@implementation ClassC
...
@end
を有します)。上記のコードの後
ClassA *a = [ClassA alloc] init];
ClassC *cInClassA = [ClassC alloc] init];
cInClassA.name = @"jack";
[a.classCArray addObject:c];
ClassB *b = [ClassB alloc] init];
b.classCArray = a.classCArray;
ClassC *cInClassB = b.classCArray[0];
cInClassB.name = @"Bob";
、cInClassA.nameが変更されました。(eauqls "ボブ")私はこれが起こるのを期待していません。私はどうすればいいですか?
をyou.Iが '実施ありがとう - (ID)copyWithZone:(NSZone *)ゾーン;'クラスC(これは、ココアでNSCopying方法である)、その後の使用のために[myObjectというコピー]、それが働きました! – Seppuu