Перегрузка простейших операций в простейших классах - C# (199439)
Формулировка задачи:
Общая постановка задачи:
Реализовать класс из индивидуального задания. Каждый разрабатываемый класс должен содержать:
скрытые данные
перегрузку конструкторов
свойства класса
индексаторы (если необходимо)
указанные перегруженные операции.
При возникновении ошибок должны генерироваться исключения. В программе должна выполняться работоспособность всех разработанных элементов класса.
Задание: Класс “Круг”. Перегрузить +, унарный минус
Решение задачи: «Перегрузка простейших операций в простейших классах»
textual
Листинг программы
using System; namespace ConsoleApplication15 { //Сложения координат двух объектов. class Circle { private int _x, _y, _z; public Circle() { _x = _y = _z = 0; } public Circle(int i, int j, int k) { _x = i; _y = j; _z = k; } public static Circle operator + (Circle op1, Circle op2) { Circle result = new Circle(); result._x = op1._x + op1._x; result._y = op1._y + op1._y; result._z = op1._z + op1._z; return result; } public static Circle operator - (Circle op1, Circle op2) { Circle result = new Circle(); result._x = op1._x - op1._x; result._y = op1._y - op1._y; result._z = op1._z - op1._z; return result; } public void Show() { Console.WriteLine(_x + ", " + _y + ", " + _z); } } class Program { static void Main() { Circle a = new Circle(1, 2, 3); Circle b = new Circle(10, 10, 10); Circle c; Console.Write("Координаты точки а: "); a.Show(); Console.WriteLine(); Console.Write("Координаты точки а: "); b.Show(); Console.WriteLine(); c = a + b; Console.Write("Результат сложения a + b: "); c.Show(); Console.WriteLine(); c = a + b + c; Console.Write("Результат сложения a + b + c: "); c.Show(); Console.WriteLine(); c = c - a; Console.Write("Результат вычитания c - а: "); c.Show(); Console.WriteLine(); c = c - b; Console.Write("Результат вычитания а: "); c.Show(); Console.WriteLine(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д