Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Lesedauer 2 Min.

Erklärt: Closures in C#

Anhand von mehreren Beispielen erklärt Softwareentwickler Mark Pelf auf CodeProject die Arbeit mit C# Closures in Theorie und Praxis.
Closures werden erstellt, wenn man innerhalb einer Funktion/Methode in C# eine Variable aus dem "above scope" referenzieren und dann diese Funktion als Delegat weitergeben. Die Variable aus dem "oberen Bereich" wird mit dem Funktionsdelegat weitergegeben. Stellt der Compiler fest, dass eine Funktion auf die Variable aus dem "darüberliegenden Bereich" zugreift, erstellt er einen Datensatz, in dem er erstens die betreffende Funktion und zweitens die Variable aus dem "darüberliegenden Bereich" (die "gefangene" Variable) speichert und sie zusammen weitergibt.Closures sind knifflig und manchmal schwer zu verstehen. Jeder ambitionierte C#-Entwickler sollte damit vertraut sein, entweder um sie zu verwenden oder um den Code anderer Leute kompetent lesen und debuggen zu können. Closures bieten eine ausgefallene Kapselung in Form einer "gefangenen Variablen", die nicht so leicht zu verstehen ist. Das Tutorial von Mark Pelf versucht, Closures zu erklären und eine ausreichende Anzahl von Beispielen zu liefern. Zielpublikum sind fortgeschrittene C#-Entwickler.
Miscellaneous

Neueste Beiträge

Deep Learning in .NET – TensorFlow.NET und TorchSharp - .NET, Python und KI, Teil 3
Mit modernen KI-Frameworks lassen sich Deep-Learning-Modelle direkt in C# entwickeln.
6 Minuten
SQLite als Dokumentenspeicher: Kann das gut gehen? - SQLite für .NET-Entwickler, Teil 5
Die Embedded SQL-Datenbank SQLite kann auch als objektorientierte Datenbank beziehungsweise Dokumentenspeicher genutzt werden – nach Konzepten also, wie sie NoSQL-Datenbanken wie MongoDB einsetzen.
6 Minuten
29. Apr 2026
Mit SQL Server 2025 HTTP-APIs aufrufen - Neues in SQL Server 2025, Teil 1
API-Aufrufe mit SQL Server 2025 sind kein Spielzeug, sondern ein ernst zu nehmender Integrationsmechanismus.
6 Minuten

Das könnte Dich auch interessieren

Elektronische Schaltkreise im Browser simulieren - Simulation
Statt mit Steckfeld oder Lötkolben kann man auf dieser Website Schaltungen per Drag and Drop zusammenstellen und deren Verhalten testen.
2 Minuten
26. Jul 2018
UIs für Linux - Bedienoberflächen entwickeln mithilfe von C#, .NET und Avalonia
Es gibt viele UI-Frameworks für .NET, doch nur sehr wenige davon unterstützen Linux. Avalonia schafft als etabliertes Open-Source-Projekt Abhilfe.
16 Minuten
16. Jun 2025
C#-.NET-Apps mit WinUI 3 - Komponentenbasierte Apps mit Fluent/FAST, Teil 3
Microsoft macht mit WinUI 3 ein natives User-Experience-Framework für Windows verfügbar, dessen Komponenten auf dem Microsoft-eigenen Design-System Fluent 2 basieren.
23 Minuten
13. Mai 2024
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige