[iOS] Type Inference vs. Type Annotation
타입 추론 [ Type Inference ]
타입 추론은
선언과 동시에 초기화를 해주는 것을 말한다.
// example1
let name = "Eugenie"
컴파일러가 초깃값을 보고 타입을 추론한다.
"Eugenie"
는 String
타입이므로
컴파일러가 알아서 String
타입이라고 추론하고
추론한대로 타입을 지정한다.
❗️ 원하는 자료형으로 추론되지 않는 경우
// example2
let num = 8.8
print(type(of:num)) // Double
상수 num
의 타입은
Float
가 아닌 Double
이다.
// example3
let char = "A"
print(type(of:char)) // String
상수 char
의 자료형은
Character
가 아닌 String
이다.
컴파일러가 초깃값을 보고 자료형을 유추할 때,
위의 사례와 같이 애매한 경우에는
좀 더 큰 범위의 자료형으로 지정한다.
❗️ 초깃값이 없는 경우
초깃값이 없는 경우에는 자료형을 유추할 수 없기 때문에
타입 추론 방식을 쓸 수 없다.
타입 어노테이션 [ Type Annotation ]
타입 어노테이션은
직접 자료형을 지정해주는 것이다.
// example
let name: String
타입 추론 방식에서 해결하지 못했던
원하는 자료형을 얻지 못하는 경우나 초깃값이 없는 경우를
해결할 수 있다.
더불어, 타입 어노테이션의 장점은 빠르다는 것이다.
타입 추론 방식은 컴파일러가 자료형을 추론하는 과정이 필요하기 때문에, 비교적 시간이 더 걸린다.
📚 Reference
Swift) 타입 추론(Type Inference) vs. 타입 어노테이션(Type Annotation)
Author And Source
이 문제에 관하여([iOS] Type Inference vs. Type Annotation), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@eugenie8/iOS-Type-Inference-vs.-Type-Annotation-d8nj2fvo저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)