Heim > Artikel > Backend-Entwicklung > Detaillierte Erläuterung der C#-Boxing- und Unboxing-Prinzipien
.NET enthält eine spezielle Objektklasse, die Werte jedes Datentyps akzeptieren kann. Wenn der übergebene oder zugewiesene Typ kein bestimmter Datentyp ist, stellt die Objektklasse eine allgemeine Methode zum Übergeben von Parametern und Zuweisen von Werten bereit. Der dem Objekt zugewiesene Wert muss vom Referenztyp sein und im verwalteten Heap gespeichert sein.
Boxing:
int age = 24;
object refAge= age;
Wie Sie sehen können, erstellt die erste Anweisung eine Variable age und platziert den Wert auf dem verwalteten Stapel ;
Die zweite Anweisung weist dem Referenztyp den Wert „Alter“ zu. Es platziert den Wert 24 im verwalteten Heap.
Der Prozess des Packens dieses Werttyps in einen Referenztyp wird als Boxen bezeichnet.
Unboxing:
Im Gegensatz dazu wird der Prozess der Konvertierung eines Referenztyps in einen Werttyp als Unboxing bezeichnet. Durch das Auspacken wird das Objekt in seinen ursprünglichen Typ zurückversetzt. Entpacken Sie das vorherige Objekt.
int newAge = (int) refAge;
string newAge = (String) refAge;
Der entpackte Wert muss vom gleichen Typ sein wie die Variable, in die er konvertiert wird.
Haben Sie anhand der einfachen Abbildung oben ein allgemeines Verständnis für die Prinzipien des C#-Boxens und -Unboxings?
Mehr C#-Boxen und -Unboxing Bitte beachten Sie Auf der chinesischen PHP-Website finden Sie verwandte Artikel mit ausführlicher Erklärung des Prinzips!