protocol Engine {
func setSpeed(speed: Double)
}
struct Car: Engine {
let speed: Double
func setSpeed(speed: Double) {
self.speed = speed
}
}
class RandomViewController: UIViewController {
let engine: Engine
}
스위프트에서 프로토콜 지향을 시연 한 사람의 비디오를 보았습니다. 그 사람은 이런 식으로 뭔가 잘못한 것 같았습니다.클래스에서 프로토콜 초기화
클래스 'RandomViewController'에 초기화 프로그램이 없습니다. 나는 어디에서 떨어져 있니? 누군가 나를 교정하고 올바른 방향으로 나를 가리킬 수 있습니까?
EDIT : 비디오는 https://youtu.be/-g53kYDIpP4?t=611 입니다. EDIT2 : 비디오를 듣지 않았습니까?
init (engine : Engine) {self.engine = Engine}은 viewcontroller에서 init을 구현하도록 강요합니다. – bCM
어쨌든, 좋은 해결책이 아닌 것 같습니다. 내가 틀렸을지도 모른다. – bCM
이것은 엄격한 타입의 Swift입니다. 선택 상수가 아니라는 것을 선언하면 init 또는 오른쪽에서 초기화해야합니다. – Konstantin