설명에 앞서
블로그에 쓰고있는 순서는 배움의 순서와는 상관이 없습니다.
단지 제가 필요하거나 혹은 방문자분들께 도움이 될만한 정보를 조각내서 올릴 예정입니다.
강좌 방식을 원하는 분들과는 조금 거리가 있을 수 있습니다.
포인터는 포인터인데..
객체를 가리키기 위한 포인터를 선언 할 때 해당 객체의 클래스를 지정합니다.
1 | NSString *str; |
하지만 정확히 어떤 객체를 가리킬지 정의하지 않고 일단 포인터만 만들어야 할 때도 있습니다.
이럴때 사용할 수 있는 타입이 id입니다.
“일단 만들긴 하는데 어떤걸 가리킬지는…”
1 | // 변수로 선언 |
일단 유심히 봐야할 점이 애스터리시크(*)가 없습니다.
id가 애스터리스크를 내포하고 있기 때문입니다.
Objective-C Documentation에서는 아래와 같이 정의하고 있습니다.
예시
1 | NSString *str = @"what is id in Objective-C?"; |
1 | id data = "..."; |
꼭 알아야 하는 개념?
분명히 Documentation에 많은 부분이 id를 리턴하는 형태로 되어있을 것 입니다.
하지만 처음부터 id에 대해서 깊게 다가가기 보다는 대략적인 개념만 알고 다음에 다시 찾아볼 기회가 있을 것 입니다.
자주 사용하고, 자주 보게되는 문법, 메소드 들은 자연스레 익혀지기 마련입니다.