Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 18347|Відповідь: 0

[Зв'язок] Делегат у C#

[Копіювати посилання]
Опубліковано 07.02.2019 21:08:45 | | |
1. Що таке довіра?

Делегат — це тип посилання, який є керованою версією вказівника функції. У C# делегати — це тип, який зберігає посилання як функції. Делегати можуть посилатися як на екземпляри, так і на статичні методи, тоді як вказівники функції можуть посилатися лише на статичні методи. Оголошення делегата дуже схоже на функцію, на відміну від функції, оскільки делегат не має функціонального тіла і потребує ключового слова Delegate. Делегована декларація визначає сигнатуру функції, яка містить список параметрів і тип повернення. Після визначення делегата можна оголосити змінну типу делегата, яку можна ініціалізувати як функцію з таким самим підписом, що й делегат, і яку потім можна викликати за допомогою змінної делегата. (ps: Насправді він довірив йому клас, і його метою було передати метод як параметр іншим методам!) )

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

2. Чотири етапи доручення: 1. Оголосіть тип доручення

  2. Існує метод, який містить код, що потрібно виконати

  3. Створіть делегований інстанс

  4. Зателефонуйте делегату

3. Приклади:






Попередній:[DllImport("user32.dll")] та зовнішнє використання в C#
Наступний:Реалізація чистого C# hook
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com