Я пытаюсь создать класс, реализующий общий IComparer моего собственного класса «Stellungen» (который переводится в позиции, например, на шахматной или шашечной доске).
Вот что я получил:
Private Class comparer(Of Stellung)
Implements System.Collections.Generic.IComparer(Of Stellung)
Public Function Compare(x As Stellung, y As Stellung) As Integer Implements System.Collections.Generic.IComparer(Of Stellung).Compare
End Function
End Class
Проблема в том, что внутри функции у меня нет доступа ни к каким полям моего класса. Если я начну с x. Intellisense даст мне только .Equals, .GetHashCode — методы, которые вы получаете для типа, но не для экземпляра. Visual Studio 10 также подчеркивает это: в определении функции биты «x как Stellung» и «y как Stellung» написаны голубым цветом, что означает, что это тип, а не фактический объект.
Так... что мне делать?? Как мне получить доступ к вещам, которые я хочу сравнить внутри своего класса?? Спасибо!