Open YouHojoon opened 1 year ago
불투명한 타입?
protocol Shape {
func describe() -> String
}
struct Square: Shape {
func describe() -> String {
return "I'm a square. My four sides have the same lengths."
}
}
struct Circle: Shape {
func describe() -> String {
return "I'm a circle. I look like a perfectly round apple pie."
}
}
위와 같은 Shape란 프로토콜과 Shape를 따르는 여러 도형이 있다고 했을 때
func makeShape() -> Shape {
return Circle()
}
해결 방법
func makeShape() -> some Shape {
return Circle()
}
some
키워드는 리턴 타입을 자동으로 그리고 빠르게 추론할 수 있는 스위치 기능이다.