swift

swift - IUO(Implicitly Unwrapping Optionals )

행복하게사는게꿈 2021. 1. 4. 19:36

IUO(Implicitly Unwrapping Optionals )

// 자동으로 추출된다

let num: Int! = 12

let a = num

// a상수의 자료형은? Int? (Optional Int)
// 어? IUO는 자동으로 추출된다고 했는데 여전히 Optional 형식이네? -> IUO는 형식추론을 사용하는 경우 자동으로 추출되지 않는다.

let b: Int = num
// 이렇게 데이터 타입을 직접적으로 명시해주면 Optional 타입이 아니라 non-optional 타입으로 저장된다.

// 즉, IUO는 사실 optional 타입이지만 특정 조건에서 자동으로 추출되는 느낌
// let num: Int! = nil 저장 가능
// 그러나 이전에 optional에서 공부했던 것처럼 빈 값을 강제추출하면 에러 발생 let b: Int num