Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 |

 

  Вопрос: Перегрузка операторов Добавлено: 26.09.03 12:31  

Автор вопроса:  Павел | Web-сайт: www.vbnet.ru | ICQ: 326066673 
А как в C# можно выполнять перегрузку операторов? Подкиньте
примерчик...

Ответить

  Ответы Всего ответов: 2  

Номер ответа: 1
Автор ответа:
 Павел



Администратор

ICQ: 326066673 

Вопросов: 368
Ответов: 5968
 Web-сайт: www.vbnet.ru
 Профиль | | #1
Добавлено: 26.09.03 14:28
Спасибо. Только я почти ничего не понял :-(( Complex - это сложение?
Тогда какие будут названия для других операторов?

Ответить

Номер ответа: 2
Автор ответа:
 grayk



Вопросов: 5
Ответов: 100
 Профиль | | #2 Добавлено: 26.09.03 14:45

Ой! Извини за длинную строку, в окне ввода ответа было нормально. Хорошо бы убрать этот ответ из базы, а то читать же невозможно.

По существу.
public static Complex operator +(Complex c1, Complex c2)   
{
      return new Complex(c1.real + c2.real, c1.imaginary + c2.imaginary);  
}

Complex - это имя класса, для объектов которого будет выполняться наш оператор. Перед скобкой стоит + -это собственно перегружаемый оператор. В скобках - операнды (соответственно, тех же типов). В теле функции создаем новый объект того же класса и определяем его по нужным правилам.
В примере для комплексных чисел (классика!) выполняется инициализация нового объекта суммами действительных и мнимых частей чисел-операндов.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам