2014-02-17 1 views
0

을 초기화 할 때 내가, 엑스 코드는 버튼 정상적으로 작동 내가 두 배열을 얻고있다엑스 코드는 배열

 #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 

아래의 코드에 어떤 문제가 있는지 잘 모릅니다 만 만들 때 센터에 대한 오류를 제공 이상하게 동작합니다. 무엇이 문제일까요?

참고 : 파생 데이터 삭제를 시도했습니다.

+0

전체 줄을 삭제하려고 시도한 적이 있습니까 (이전 줄과 이후 줄 일 수도 있습니다). 특히 코드를 복사하여 붙여 넣을 때 보이지 않는 문자를 삽입하면 이러한 오류가 발생할 수 있습니다. – HAS

+0

나는 시도했지만 아무것도 바뀌지 않았다. – meth

+1

그것은 지금 이상하다. 배열의 이름을 "centers2"로 변경하고 문제가 사라졌습니다. – meth

답변

0

그래, 내가 물어 본 질문이 아니지만 viewDidLoad에서 변수를 인스턴스화하는 대안을 제안하고자합니다. 그것은 "게으른 인스턴스"라는 뭔가, 그것은 다음과 같습니다 어레이를 재설정해야하는 경우

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

, 그냥 전무로 설정합니다. 다시 호출 할 때까지 메모리를 재 할당하지 않습니다.

P. 무엇을 하든지, 그 메소드 내에서 self.button을 호출하지 마십시오. 무한 루프가 생성됩니다.