русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Операції


Дата додавання: 2014-10-02; переглядів: 722.


 

Делегати можна порівнювати на рівність і нерівність. Два делегати рівні, якщо вони обидва не містять посилань на методи або якщо вони містять посилання на одні і ті ж методи в одному і тому ж порядку. Порівнювати можна навіть делегати різних типів за умови, що вони мають один і той же тип повертаємого значення і однакові списки параметрів.

Делегати, які розрізняються тільки іменами, вважаються за тих, які мають різні типи.

З делегатами одного типу можна виконувати операції простого і складного привласнення, наприклад:

 

Del d1 = new Del (o1.Do): // o1.Do

Del d2 = new Del (o2.Do); // o2.Do

Del d3 = d1 + d2; // ol.Do і o2.Do

d3 += d1; // ol.Do. o2.Do і ol.Do

d3 -= d2; // o1.Do і ol.Do

 

Ці операції можуть знадобитися, наприклад, в тому випадку, якщо в різних обставинах потрібно викликати різні набори і комбінації наборів методів.

Делегат, як і рядок string, є незмінним типом даних, тому при будь-якій зміні створюється новий екземпляр, а старий згодом видаляється складальником сміття.

 


<== попередня лекція | наступна лекція ==>
Використання делегатів | Передача делегатів в методи


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн