0

私は Obj-C が初めてです。

以下のコード例のように、NSMutableArray を NSArray に割り当てると問題が発生するかどうかを知りたいです。

NSMutableArray *mutableArray = [NSMutableArray arrayWithObjects:@"item1", @"item2", nil];
NSArray *array = mutableArray;

[mutableArray copy]使用すると、配列が新しいセットとして複製されることを知っています。私の質問は、私のアプローチがガイダンスと矛盾するか、または問題が発生するかということです。

ありがとう。

4

3 に答える 3

1

キャッチはこれです:

mutableArray が何らかの形で変更され、配列がまだ自己不変であると考えている場合。
その後、物事が制御不能になる可能性があります。

それ以外は特に問題はないと思いますが…

于 2013-09-25T04:26:21.700 に答える
0

配列は変更可能のままですが、コンパイラはそれが不変であると考えます。したがって、型キャストせずに NSMutableArray に固有のメソッドを使用することはできません。

于 2013-09-25T04:30:43.190 に答える