Sniedziet piemēru, kā izmantot delegātus C# valodā.
sobes.tech AI
Atbilde no AI
Dēļi ir veida droši metožu norādītāji. Tie ļauj nodot metodes kā argumentus, piešķirt tās mainīgajiem un izsaukt tās caur šiem mainīgajiem. Dēļi plaši tiek izmantoti notikumu veidošanā, atpakaļzvaniem un asinhronajā programmēšanā:
Dēļa lietošanas piemērs:
-
Dēļa deklarēšana: Definējiet metodes signatūru, uz kuru var norādīt dēli:
public delegate int MyDelegate(int x, int y); -
Metodes definēšana: Izveidojiet metodes ar atbilstošu signatūru:
public class Calculator { public int Add(int a, int b) { return a + b; } public int Subtract(int a, int b) { return a - b; } } -
Dēļa izmantošana: Izveidojiet dēļa eksemplāru un piešķiriet tam metodi. Tad izsauciet metodi caur dēli:
public class Program { public static void Main(string[] args) { Calculator calc = new Calculator(); // Izveido dēļa eksemplāru un piešķir tam Add metodi MyDelegate del = new MyDelegate(calc.Add); // Izsauc Add metodi caur dēli int result1 = del(10, 5); // result1 = 15 Console.WriteLine($"Summa rezultāts: {result1}"); // Pārraksta dēli uz Subtract del = calc.Subtract; // Izsauc Subtract metodi caur dēli int result2 = del(10, 5); // result2 = 5 Console.WriteLine($"Atņemšanas rezultāts: {result2}"); } }
Šajā piemērā MyDelegate var norādīt jebkuru metodi, kas pieņem divus veselus skaitļus (int x, int y) un atgriež veselīgu skaitli (int). Mēs izveidojām divus dēļa eksemplārus (del), piešķīrām tiem Add un Subtract metodes, un pēc tam izmantojām dēli šo metožu izsaukšanai.