初始化数组时,xCode表现奇怪

时间:2014-02-17 14:02:14

标签: nsmutablearray xcode5

我不知道下面的代码有什么问题

        #import "ViewController.h"

        @interface ViewController ()
        {
            NSMutableArray * buttons;
            NSMutableArray * centers;

            int counter;
            int index;
        }
        @end


        @implementation ViewController

        -(void)viewDidLoad
        {
            [super viewDidLoad];

            buttons = [NSMutableArray new];
            centers = [NSMutableArray new];//error here expected identifier or '('
        }
//other methods
    @end

我得到两个数组,xcode正常用于按钮,但在创建时它会给中心带来错误。可能是什么问题?

注意:我尝试删除派生数据。

1 个答案:

答案 0 :(得分:0)

好的,我知道这不是你提出的问题,但我想建议在viewDidLoad中实例化变量的替代方法。这就是所谓的“懒惰实例化”,它看起来像这样:

- (NSMutableArray *)buttons
{
     if (!_buttons) _buttons = [NSMutableArray new];
     return _buttons;
}

当您需要重置阵列时,只需将其设置为nil即可。在你再次调用它之前,它不会重新分配内存。

P.S。无论你做什么,都不要在该方法中调用self.buttons,否则你将创建一个无限循环。