-2

同じクラスで定義されているNSMutable配列に同じクラスのオブジェクトを追加しようとしています。私のアプローチは次のようになりますが、アレイをテストしたとき、常に空でした。また、ランダムな文字列または整数を追加してみました。

.hファイル:

@property NSMutableArray *anArray;
- (void)addObject: (TheClass*)nameOfObjectToBeAdded;

.mファイル:

@synthesize anArray;

- (void)addObject: (TheClass*)nameOfObjectToBeAdded {
    [anArray addObject:nameOfObjectToBeAdded];
}

main.m:

#import "TheClass.h"

int main(int argc, char *argv[])
{
    @autoreleasepool {

        TheClass *object1 = [[TheClass alloc] init];
        TheClass *object2 = [[TheClass alloc] init];
        [object1 addObject:object2];

    }
    return 0;
}

object1のNSMutableArrayにobject2を追加しようとしています。

前もって感謝します!

4

3 に答える 3

3

配列を使用する前に、配列を割り当てて初期化する必要があります。

Class.m では、おそらくinit:

self.anArray = [[NSMutableArray alloc] init];
于 2012-05-08T14:57:46.163 に答える
1

最初に NSMutableArray を作成する必要があります。

NSMutableArray *anArray = [NSMutableArray array];
[anArray addObject:object];
于 2012-05-08T14:58:16.957 に答える
0

クラス初期化子に割り当てを次のように追加します。

ThisClass

-(id) init: {
  self = [super init];
  if(self) {
    self.anArray = [[NSMutableArray alloc] init];
    /* ... other initializer stuff ... */
  }
  return self;
}
于 2012-05-08T15:00:45.790 に答える