2014-10-22 2 views
1

여기 내 코드는 다음과 같습니다일반 유형 구현하는 하나 개 이상의 특성

나는 PartialEq과 PartialOrd 특성을 모두 구현하기 위해 T 제네릭 형식을 강제 할
struct Node<T: PartialEq & PartialOrd> 
{ 
    left: Box<Option<Node<T>>>, 
    right: Box<Option<Node<T>>>, 
    value: Option<T>, 
} 

. 나는 synthax가 이것을 찾지 못했다. (& char는 내가 찾지 않는 char이다.) 도와 주셔서 감사합니다.

답변

5

구문은 +입니다 :

struct Node<T: PartialEq + PartialOrd> { 
    left: Option<Box<Node<T>>>, 
    right: Option<Box<Node<T>>>, 
    value: Option<T>, 
} 

또한 Option<Box<U>>Box<Option<U>>을 변경하는 것이 좋습니다. 이것은보다 효율적으로 표현 될 수 있습니다 (None은 할당을 필요로하지 않으며 사실 null 포인터로 나타납니다).

관련 문제