Skip to main content

Delegates

Ein Delegate ist ein typisierter Verweis auf eine oder mehrere Methoden. Er ermöglicht es, Methoden als Objekte zu behandeln.

// Delegate-Definition:
public delegate int Operation(int a, int b);

public class Rechner
{
public int Addieren(int a, int b) => a + b;
public int Multiplizieren(int a, int b) => a * b;
}

// Anwendung:
var rechner = new Rechner();

// Zuweisung der Methode an den Delegate:
Operation op = rechner.Addieren;
Console.WriteLine(op(3, 4)); // Ausgabe: 7

// Delegate neu zuweisen:
op = rechner.Multiplizieren;
Console.WriteLine(op(3, 4)); // Ausgabe: 12