Heim > Artikel > Backend-Entwicklung > So verwenden Sie verwalteten und nicht verwalteten Code in C#
Für die Verwendung von verwaltetem Code und nicht verwaltetem Code in C# sind bestimmte Codebeispiele erforderlich.
Bei der C#-Programmierung müssen wir häufig verwalteten Code und nicht verwalteten Code verwenden, um bestimmte Funktionen zu erreichen. Unter verwaltetem Code versteht man Code, der in der CLR (Common Language Runtime) ausgeführt wird und von der CLR zur Speicherverwaltung und Ressourcenzuweisung verwaltet wird. Unter nicht verwaltetem Code versteht man Code, der direkt auf dem Betriebssystem ausgeführt wird und nicht von der CLR gesteuert wird. Im Folgenden wird anhand von Beispielen erläutert, wie verwalteter Code bzw. nicht verwalteter Code verwendet wird.
1. Verwendung von verwaltetem Code
Zum Beispiel möchten wir eine verwaltete Klasse namens „MathHelper“ in C# verwenden, um eine statische Methode zum Implementieren der Funktion zum Addieren zweier Zahlen bereitzustellen.
using System; public class MathHelper { public static int Add(int a, int b) { return a + b; } } class Program { static void Main(string[] args) { int result = MathHelper.Add(1, 2); Console.WriteLine("The result of adding is: " + result); } }
Im obigen Beispiel haben wir eine verwaltete Klasse namens „MathHelper“ definiert, die eine statische Methode „Add“ enthält, um die Funktion des Addierens zweier Ganzzahlen zu implementieren. In der Main-Methode rufen wir die Add-Methode der MathHelper-Klasse auf, um die Ergebnisse auszudrucken.
2. Verwendung von nicht verwaltetem Code
Angenommen, wir haben eine nicht verwaltete Dynamic Link Library (DLL), die eine Funktion namens „NativeHelper“ enthält, die zur Berechnung des Durchschnitts zweier Zahlen verwendet wird. Wir können diese nicht verwaltete Funktion mithilfe von Plattformaufrufen (P/Invoke) in C# verwenden.
using System; using System.Runtime.InteropServices; public class Program { [DllImport("NativeLibrary.dll")] public static extern double CalculateAverage(int a, int b); public static void Main(string[] args) { int num1 = 10; int num2 = 20; double average = CalculateAverage(num1, num2); Console.WriteLine("The average is: " + average); } }
Im obigen Beispiel verwenden wir das Attribut [DllImport], um Funktionen in nicht verwaltetem Code zu deklarieren. Wir können diese nicht verwaltete Funktion in C# verwenden, indem wir den Namen der DLL und den Namen der Funktion angeben. In der Main-Methode rufen wir die Funktion CalculateAverage auf, um den Durchschnitt zweier Ganzzahlen zu berechnen und das Ergebnis auszugeben.
Es ist zu beachten, dass wir bei der Verwendung von nicht verwaltetem Code sicherstellen müssen, dass die Freigabe von Speicher und Ressourcen an geeigneten Stellen erfolgt, um Speicherlecks und Ressourcenverschwendung zu verhindern.
Zusammenfassung:
Dieser Artikel beschreibt die Verwendung von verwaltetem und nicht verwaltetem Code in C# und enthält spezifische Codebeispiele. Verwalteter Code wird von der CLR für die Speicherverwaltung und Ressourcenzuweisung verwaltet und bietet die Vorteile einer plattformübergreifenden und automatischen Speicherverwaltung. Bei nicht verwaltetem Code handelt es sich um Code direkt auf dem Betriebssystem, der eine manuelle Verwaltung von Speicher und Ressourcen erfordert. Bei der eigentlichen Programmierung können wir je nach Bedarf verwalteten Code und nicht verwalteten Code verwenden, um bestimmte Funktionen zu implementieren.
Das obige ist der detaillierte Inhalt vonSo verwenden Sie verwalteten und nicht verwalteten Code in C#. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!