2016년 5월 10일 화요일

Objective-C self 지시자의 용법


Objective-C는 C 기반에서 small talk의 개념을 적용 한 언어라서
기본적으로 모두 객체를 통해서 대화한다.

C로 작성 되어진 언어지만 단순한 함수선언과 호출이 아닌,
선언된 객체의 인스턴스의 메소드를 호출하는 방식으로 사용.

이는 객체 내부에서 메소드를 호출하는데도 예외는 아닌데 이 때 self 지시자가 사용된다.

@interface Car : NSObject
@property int wheel, doors;
-(void) accelerate;
@end

@implementation Car
@synthesize wheel = _wheel, doors = _doors;
-(void) accelerate{
    engine(); <-- 이렇게 쓰일 수 없음
    [self engine]; <--- 이렇게 쓰여야 함.

    _wheel = 3; <-- 멤버 변수는 이렇게 사용도 하지만
    self.wheel = 3; <-- 이렇게 property를 이용해서 사용할 수도 있음
}

-(void) engine{
  // 엔진 상태 점검
}
@end

댓글 없음:

댓글 쓰기