Swift 언어
불투명 타입과 존재 타입
func make() -> some Shape와 func make() -> any Shape는 호출자 입장에서 무엇이 다른가요?
면접관은 이 답을 어떻게 들을까요? 넘어갈지, 더 물어볼지, 떨어뜨릴지 알려 주고, 걸리는 문장은 콕 집어 줘요. 점수는 그대로예요.
func make() -> some Shape와 func make() -> any Shape는 호출자 입장에서 무엇이 다른가요?
some은 컴파일러가 구체 타입을 하나로 아는 불투명 타입이고, any는 어떤 Shape든 담을 수 있는 존재 타입이라 호출자는 담긴 타입을 모른다.