Точка останова в равенстве реализации на iEqualityComprer никогда не попадает вC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Точка останова в равенстве реализации на iEqualityComprer никогда не попадает в

Сообщение Anonymous »

У меня есть простой пользовательский класс точка: < /p>

Код: Выделить всё

public class Point: IEqualityComparer
{
public double X;
public double Y;
public double Z;
private double[] startPointCoords;

public Point()
{
}

public Point(double[] pointArray)
{
this.startPointCoords = pointArray;
X = pointArray[0];
Y = pointArray[1];
Z = pointArray[2];
}

public bool Equals(Point x, Point y)
{
if(x.X == y.X && x.Y == y.Y && x.Z == y.Z)
{
return true;
}
return false;
}

public int GetHashCode(Point obj)
{
string xString = X.ToString().Replace(".", "");
string yString = Y.ToString().Replace(".", "");
string zString = Z.ToString().Replace(".", "");
int xInt = Convert.ToInt32(xString);
int yInt = Convert.ToInt32(yString);
int zInt = Convert.ToInt32(zString);
return xInt - yInt + zInt;
}
}
Я использую этот класс в словаре . Я проверяю, если экземпляр точки был добавлен в словарь с использованием: < /p>

Код: Выделить всё

if (!pointsToProcess.ContainsKey(startPoint))
{
pointsToProcess.Add(startPoint, startPoint);
}
Я отлаживаю свой код, чтобы убедиться, что equals работает правильно. Моя точка перерыва, которую я установил в точке. Equals никогда не достигается. Я установил точку перерыва. Кажется, что они не используются. Я абсолютно уверен, что вся точка , которую у меня есть в моем коде, из моего пользовательского пространства имен.
Почему моя точка.>

Подробнее здесь: https://stackoverflow.com/questions/611 ... is-never-h
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»