[c/objetive-c] 불투명 타입
불투명타입(Opaque Type)
코어 파운데이션 관련 문서를 보면 불투명타입(Opaque Type)이라는 말이 자주 나온다. 코어 파운데이션에서 객체처럼 사용되는 모든 타입들은 불투명타입(CFArrayRef, CFStringRef 등등)이다. "불투명"하다고 해서 감이 쉽게 오지 않는데, 간단히 풀어 쓰자면 "내부의 데이터 구조를 들여다볼 수 없는 타입"이라고 보면 된다.
코코아에서 객체를 만들 때 인스턴스 변수는 기본적으로 protected 나 private으로 만들어지기 때문에 이러한 인스턴스 변수는 객체가 이를 읽거나 쓸 수 있는 메소드(accessor)를 제공하지 않는 이상 객체 속에 어떤 변수들이 있는지 외부에서는 알 수 없다.