Heim > Backend-Entwicklung > C++ > Wie kann ich Methoden als Parameter in C#übergeben?

Wie kann ich Methoden als Parameter in C#übergeben?

Barbara Streisand
Freigeben: 2025-02-01 01:16:09
Original
667 Leute haben es durchsucht

How Can I Pass Methods as Parameters in C#?

C# Methode Parameter Passion: Ein praktischer Leitfaden

c# bietet einen leistungsstarken Mechanismus für die Übergabe von Methoden als Parameter an andere Methoden und verbessert die Codeflexibilität und die Wiederverwendbarkeit erheblich. Dies wird mit Delegierten erreicht.

Das folgende Beispiel zeigt ein gemeinsames Problem: Versuch, einen Methodennamen an eine andere Methode zu übergeben (RunTheMethod), ohne die Parameter korrekt anzugeben. Dieser Ansatz schlägt aufgrund einer unzureichenden Parameterdefinition in RunTheMethod.

fehl

Die Lösung beinhaltet die Verwendung des Func -Delegierten. Func<T, TResult> repräsentiert eine Methode, die einen Parameter vom Typ T akzeptiert und einen Wert vom Typ TResult zurückgibt. Dies ermöglicht eine präzise Parameterspezifikation innerhalb der Empfangsmethode.

Hier ist ein korrigierter Code -Snippet, der die Verwendung des Func -Delegierten zeigt:

<code class="language-csharp">public class Class1
{
    public int Method1(string input)
    {
        // ... perform operations ...
        return 0;
    }

    public int Method2(string input)
    {
        // ... perform different operations ...
        return 1;
    }

    public bool RunTheMethod(Func<string, int> myMethodName)
    {
        // ... initial operations ...
        int result = myMethodName("My String");
        // ... subsequent operations ...
        return true;
    }

    public bool Test()
    {
        return RunTheMethod(Method1);
    }
}</code>
Nach dem Login kopieren

in diesem verbesserten Code akzeptiert RunTheMethod einen Func<string, int> Parameter. Dies bedeutet, dass eine Methode erwartet, dass sie ein String -Argument aufnimmt und eine Ganzzahl zurückgibt. Method1 und Method2 übereinstimmen diese Signatur, sodass sie erfolgreich bestanden werden können.

Diese Technik ermöglicht die Verwendung von Delegierten dynamischen Methodenaufruf und verbessert die Code -Modularität und -wartbarkeit signifikant.

Das obige ist der detaillierte Inhalt vonWie kann ich Methoden als Parameter in C#übergeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage