인터페이스를 구현하는 여러 유형이 있습니다. 이러한 유형의 평등은 인터페이스 구성원에 따라 다릅니다. 각 유형에 대해 Equals
또는 op_Equality
을 무시하지 않고 이러한 유형에 대해 동등 함을 한 번 정의 할 수 있습니까?유형 정의 외부에서 동등성 구현
편집 나는 어떤 이유로, 심지어 유형 IEntity
을 구현하지 않는, =
의 모든 사용을 오버라이드 다음을 시도했지만.
[<AutoOpen>] module Equality = let inline op_Equality (left:IEntity) (right:IEntity) = true
는 또한 유연한 타입 (#IEntity
)를 사용하여 시도. 같은 결과.
내가 interfaces.It이는 추상 기본 클래스를 쉽게 할 수있을 것입니다 수행하는 방법에 표시되지 않습니다,하지만 난 당신이 이미 알고있는 것 같아요? – wmeyer
예.정적 멤버 제약 조건을 실험했지만 인터페이스를 구현하는 유형에'op_Equality'를 제한하는 방법을 찾지 못했습니다. – Daniel
편집 관련 : 멤버 함수 만 오버로드 될 수 있습니다. – wmeyer