Получить ошибку «Невозможно преобразовать в нулевое значение« Точка », потому что это тип значения, который не может иметь значение NULL». - PullRequest
0 голосов
/ 13 февраля 2019

Извините за такой простой вопрос (я гуглил, но тупик, новичок в программировании)

пример кода ниже

  public Point GetRandomWalkableLocationInRoom(Rectangle room)
    {
        if (DoesRoomHaveWalkableSpace(room))
        {
            for (int i = 0; i < 100; i++)
            {
                int x = Game.Random.Next(1, room.Width - 2) + room.X;
                int y = Game.Random.Next(1, room.Height - 2) + room.Y;
                if (IsWalkable(x, y))
                {
                    return new Point(x, y);
                }
            }
        }


        return null;
    }

1 Ответ

0 голосов
/ 13 февраля 2019

В случае, если DoesRoomHaveWalkableSpace (room) имеет значение false, либо сгенерировать исключение (если это соответствует вашей реализации), либо вернуть какое-то значение по умолчанию, например, «новая точка (double.NaN, double.NaN)» или «новая точка»(ноль, ноль) '.

...