동일한 개체를 상속받은 2 개의 개체가 있습니다. 그리고 추가 객체 유형의 일반 객체입니다. 일반 개체 목록을 저장하고 싶지만 오류가 발생합니다.상속 오류가있는 일반 사항
//Error: Cannot convert value of Type Node to expected argument type Node
코드 :
class Pet {
}
class Cat: Pet {
}
class Dog: Pet {
}
public class Node<T> {
public var value: T
public init(value: T) {
self.value = value
}
}
var list = [Node<Pet>]()
//Error: Cannot convert value of Type Node<Dog> to expected argument type Node<Pet>
list.append(Node<Dog>(value: Dog()))
왜 이런 일이 무엇입니까? 어떤 제안?
편집 :
내가 노드를 노드 의 목록을 작성하고 추가 왜 캔트 개 종류의 애완 동물 인 경우?
:
은 당신이 그런 일을 할 수를 : Dog()))'및'list.append (Node (value : Cat()))'를 호출합니다. – holex