Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

C# 7: Neue Funktionen

Lokale Funktionen

Testen Sie unsere 2019 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Funktionen können Sie in C# 7.0 jetzt auch innerhalb von Methoden deklarieren. Was unterscheidet lokale Funktionen von Lambda Expressions und welche Vorteile bieten sie? Dieser Film gibt Ihnen Aufschluss darüber.
05:30

Transkript

Funktionen können jetzt doch innerhalb von Methoden deklariert werden. Wie unterscheiden sich lokale Funktionen zu Lambda Expressions? Welche Vorteile bieten sie? Ich habe dafür diese Methode Local Functions vorbereitet, in der wir diese private static Add Methode aufrufen können. int result = Add(1,2) Werte, die wir leicht überprüfen können und der Ausgabe vom Ergebnis. Ich startet das Programm. Wie erwartet ist das Ergebnis 3. Ok. Diese Methode ist private deklariert. Ich kann sie aber von jedem Member der Klasse aufrufen. Ich kann da jetzt nicht sicherstellen, dass diese Methode nur innerhalb von LocalFunctions aufgerufen wird. Das kann ich mithilfe eines Delegates. Ich kann hier einen Delegate vom Typ func Zwei Eingabeparameter vom Typ int und einem int Return-Wert Genau wie diese Signatur mit Return-Typ hier deklariert ist. Ich definiere einen Namen für diese Delegate Variable, add = und weise jetzt eine Lambda Expression zu. (x, y) und die Implementierung, wir liefern x + y zurück. Diese Delegate Variable kann jetzt ich jetzt verwenden, um diese Lambda Expression aufzurufen. result = add Und wir können uns diese Methode hier ersparen. Ich rufe mir das Programm noch mal auf und wie zuvor haben wir Ergebnis 3. Dieser Delegate hat den Vorteil, dass wir das nur innerhalb der Methode LocalFunctions aufrufen können. oder besser Nachteil von diesem Syntax, Func Im C# 7 kann ich innerhalb einer Methode eine lokale Funktion schreiben, die deklariert ist,wie wir das von Methoden kennen. Ich definiere hier eine Add-Funktion mit (int x, int y) Parameter und mache entsprechend eine Implementierung return x + y Entfernen wir diesen Delegate und rufen das Programm noch mal auf mit dem gleichen Ergebnis. Diese Syntax ist doch viel einfacher. Außerdem ersparen wir uns im Vergleich zum Delegate, das Erzeugen einer Instanz. Beim Delegate steckt in Wirklichkeit eine Klasse dahinter. Diese Klasse muss instanziert werden und der Delegate selbst kann eine Liste halten von allen Funktionen, die hinzugefügt werden. Und er ruft eine Funktion nach der anderen auf. Und der Delegate hat einiges an Overhead. Hier mit lokalen Funktionen haben wir eine simple Funktion, die wir einfach über einen Funktionspointer aufrufen können. Lambda Expressions unterstützen auch Closures. Ich kann zum Beispiel eine Variable in diesem Scope der Methode definieren z = 3 und diese Variable jetzt auch innerhalb einer Lambda Expression verwenden und das geht auch bei lokalen Funktionen. Ich kann innerhalb einer lokalen Funktion auf Variablen, die innerhalb der äußeren Methode deklariert sind, zugreifen. Welches Ergebnis bekommen wir jetzt hier? Starten wir das Programm. Und jetzt ist das Ergebnis 6. 1 + 2 + der Wert von z. Mit Lokalen Funktionen können wir jetzt auch Funktionen innerhalb einer Methode deklarieren, wie zum Beispiel hier LocalFunction, Inhalt AMethod Diese LocalFunction liefert 42 zurück. Statt einfache Methoden mit dem private Modifier, die wir nur an einer Stelle brauchen, schreiben wir die Methode gleich in die Methode hinein mit einfacher Syntax. Und dabei werden auch Closures unterstützt. Wir können auf Felder außerhalb dieser lokalen Funktionen, die innerhalb der äußeren Methode deklariert sind, zuzugreifen.

C# 7: Neue Funktionen

Entdecken und nutzen Sie die mit der neuen Version 7 hinzugekommenen Features der mächtigen Programmiersprache C#.

1 Std. 34 min (21 Videos)
Derzeit sind keine Feedbacks vorhanden...
 
Hersteller:
Software:
C# C# 7
Exklusiv für Abo-Kunden
Erscheinungsdatum:24.03.2017

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!