toll-free bridged type
공식 문서에서 타입을 보다보면 NS
로 시작하는 타입들이 있다.
- 이 타입은 Objectiv-C에서 넘어온 타입으로, 클래스 로 구현되어 있다.
- 해당 타입에서 NS를 제외한 이름을 가진 타입은 Swift에서 추가된 타입인데, 이들은 구조체 로 구현되어있다.
as
로 타입 캐스팅을 통해 호환가능하다.
- 이러한 호환성이 있는 타입을
toll-free bridged type
이라고 부른다.
Any
- 저장 용도로만 사용
- 설령 String이 저장되어있다고 해도,
.count
와 같은 값을 읽는 기능은 사용할 수 없다.
is
- 이항연산자로,
type check operator
라고 한다.
- 컴파일 타임
as
- 이항연산자로,
type conversion
에 사용
- 컴파일 타임
Forced Cast
as!
- 실패하면 크래시로, 사용하지 않는 것이 좋다.
- 런타임
Conditional Cast
as?
- 타입 컨버전이 실패하면 nil 리턴.
- 따라서 리턴값은 옵셔널 타입으로 받아야 한다.
- 런타임