【问题标题】:How to add an object to a NSMutable array that is in a class? [duplicate]如何将对象添加到类中的 NSMutable 数组中? [复制]
【发布时间】:2012-05-17 02:00:18
【问题描述】:

我正在尝试将同一类的对象添加到在同一类中定义的 NSMutable 数组。 我的方法看起来像这样,但是当我测试数组时,它总是空的。我还尝试添加随机字符串或整数。

.h 文件:

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

.m 文件:

@synthesize anArray;

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

ma​​in.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;
}

我正在尝试将 object2 添加到 object1 的 NSMutableArray。

提前致谢!

【问题讨论】:

    标签: objective-c nsmutablearray


    【解决方案1】:

    使用前需要分配并初始化数组:

    在 Class.m 中,可能在 init

    self.anArray = [[NSMutableArray alloc] init];
    

    【讨论】:

    • 太好了,如果它对您有用,请随时将答案标记为正确。
    【解决方案2】:

    首先你需要创建 NSMutableArray..

    NSMutableArray *anArray = [NSMutableArray array];
    [anArray addObject:object];
    

    【讨论】:

      【解决方案3】:

      在您的类初始化程序中添加分配,如下所示:

      ThisClass

      -(id) init: {
        self = [super init];
        if(self) {
          self.anArray = [[NSMutableArray alloc] init];
          /* ... other initializer stuff ... */
        }
        return self;
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-01-03
        • 2021-12-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-06-04
        • 2019-05-12
        相关资源
        最近更新 更多