Вычитание объектов в C#
Кроме сложения, в классе можно связать со знаками
-, * и / другие арифметические
операторы. Объявление у каждого то же: public static operator
и нужный символ, тело описывает действие над полями.
Разность двух объектов одного типа записывают по той же схеме, что и сумму. Запишем класс Vec:
class Vec {
public int x = 0;
public int y = 0;
public static Vec operator -(Vec left, Vec right) {
Vec result = new Vec();
result.x = left.x - right.x;
result.y = left.y - right.y;
return result;
}
}
Пример вычитания двух векторов:
Vec from = new Vec();
from.x = 10;
from.y = 8;
Vec step = new Vec();
step.x = 3;
step.y = 2;
Vec rest = from - step;
Console.WriteLine(rest.x + " " + rest.y);
Сделайте класс Grams с полем value.
Получите разность двух масс. Из 50
отнимите 20 и выведите value результата.
Создайте два объекта Grams с 80 и 30,
получите разность и выведите массу.
Сделайте класс Weight с полем grams.
Получите разность двух весов.
Из 500 вычтите 120 и выведите grams
результата.