static - 해당되는 글 1건
메서드 내에서 지역 변수를 선언할 때 앞에 static 키워드를 적어 두면, 메서드를 여러 번 호출하는 동안 그 값을 유지할 수 있다.

[Example static]

-(void) showPage
{
     static int pageCount =0;
     ...
     ++pageCount;
     NSLog(@"pageCount: %i", pageCount);
}
정적 변수는 프로그램을 실행하는 동안 단 한 번만 초기화 되고, 메서드가 여러 번 호출되는 동안 자신의 값을 계속 유지 한다. 정적 지역 변수는 프로그램이 시작되면 한 번 0으로 설정되고 showPage 메서드가 호출되는 동안 값을 유지한다.  pageCount를 정적 지역 변수로 만드는 것과 인스턴스 변수로 만드는 것 사이에 차이점에 유의하자. 정적 지역 변수 pageCount는 showPage 메서드를 실행시키는 모든 객체가 인쇄한 페이지 수를 센다. 후자, 즉 인스턴스 변수의 경우에는 각 객체가 자신만의 pageCount 사본이 있으므로 각 객체가 인쇄한 페이지 수를 센다. 정적 변수나 지역 변수는 자신이 정의된 메서드 내에서만 접근할 수 있다는 사실을 기럭하라. 심지어 정적 변수 pageCount도 showPage내에서만 접근할 수 있다. 만일, 변수를 선언한 부분을 메서드 선언 바깥으로(보통 구현 파일 앞부분에)옮기면 다른 메서드에서도 접근할 수 있다.

저작자 표시
신고

'Study > Objective-C' 카테고리의 다른 글

[Objective C: 상속]  (0) 2010.07.16
[Objective C: self 키워드]  (0) 2010.07.16
[Objective C: static 키워드]  (0) 2010.07.16
[Objective C: 자동 생성 접근자 메서드]  (0) 2010.07.16
[Objective C: 반복문]  (0) 2010.07.16
[Objective C: 기본 데이터형]  (0) 2010.07.16
Trackback 0 | Comment 0

강군v's Blog is powered by Daum & tistory

 

티스토리 툴바