Sobes.tech
Junior — Middle

Kas saaksite selgitada delegaatide kontseptsiooni ja nende rolli programmeerimises?

sobes.tech AI

Vastus AI-lt

C# keeles on delegaadid tüübid, mis esindavad viiteid meetoditele kindla signatuuri ja tagastustüübiga. Need võimaldavad meetodeid edasi anda parameetritena, neid salvestada muutujatesse ning neid dünaamiliselt kutsuda.

Delegaatide roll:

  • Võimaldavad tagasikutsumiste (callbacks) rakendamist.
  • Kasutatakse sündmuste ja sündmuste töötlemiseks.
  • Pakuvad koodi paindlikkust ja laiendatavust.

Näide delegaadi kasutamisest:

// Delegaadi deklaratsioon
public delegate int Operation(int x, int y);

class Program
{
    static int Add(int a, int b) => a + b;
    static int Multiply(int a, int b) => a * b;

    static void Main()
    {
        Operation op = Add;
        Console.WriteLine(op(3, 4)); // 7

        op = Multiply;
        Console.WriteLine(op(3, 4)); // 12
    }
}

Sellisel viisil võimaldavad delegaadid meetodite dünaamilist valimist ja kutsumist.