Downcast from Any to a protocol

后端 未结 4 1214
南旧
南旧 2020-12-09 18:17

I have the following code. How can I resolve the error in the last line?

protocol Animal {
    func walk()
}

struct Cat: Animal {
    func walk() {}

    in         


        
4条回答
  •  抹茶落季
    2020-12-09 19:11

    My approach

    @objc protocol Animal {
        func walk()
    }
    
    @objc class DummyAnimal: Animal {
        func walk() {
    
        }
    }
    
    @objc class Cat: DummyAnimal {
        override func walk() {
            print("meow")
        }
    
        override init() { }
    }
    
    var obj: Any = Cat()
    var cat = obj as DummyAnimal
    cat.walk()
    

提交回复
热议问题