zero_x - Fr 25.01.08 16:03
Titel: Boxing und Unboxing
Hallo liebes Forum,
In C# gibt es die Beiden Befehle Boxing und Unboxing. Bei diesen Beiden gibt es hin und wieder Klammern. Hier mal ein Beispiel:
C#-Quelltext
1: 2:
| int i = 123; object o = (object)i; |
Wieso verwendet man die Klammern? Was macht das für einen Sinn? Wann verwent man das?
Vielen Dank schon im Voraus! ;)
MfG
Zero_x
Nachtrag: Die Frage ist aus meinen letzen Thread kopiert, da es geschlossen wurde. Die weitern Fragen sind unter: http://www.c-sharp-forum.de/forum_Allgemeine+NETFragen_58.html verschoben. Den Sinn vom Moderator versteh ich auch nicht!
JüTho - Fr 25.01.08 16:23
Puhhh... Das ist eigentlich viel zu kompliziert, um es in Forumsbeiträgen zu erläutern.
Es geht darum, dass
Objekte (nämlich Instanzvariablen) von einem Typ in einen anderen konvertiert werden müssen oder umdeklariert werden sollen, damit man auf bestimmte Eigenschaften zugreifen kann.
Beispiel: Als
object bietet eine int-Zahl nur die Standardmethoden jeder Klasse. Als
int steht u.a. MinValue und MaxValue zur Verfügung.
Stichworte in diesem Zusammenhang sind auch
cast, as, is. Grundlegende Erläuterungen findest Du z.B. in
OpenBook C# [
http://www.galileocomputing.de/openbook/csharp/].
Und die Frage der
Klammerung ist doch etwas so Grundsätzliches in jeder Programmiersprache (beginnend beim Mathe-Unterricht der 5./6. Klasse), dass sich eine allgemeine Antwort sowieso verbietet.
Jürgen
Ergänzung: Schelte am Moderator ist völlig fehl am Platze. Jede Diskussion darf/soll sich nur mit einem Problem befassen; und Christian hat das
hier [
http://www.c-sharp-forum.de/viewtopic.php?p=484617#484617]auch klar begründet:
| Zitat: |
| Bitte erstelle für jede Deiner Fragen einen eigenen Thread. Zum einen gibt das sonst ein ziemliches durcheinander (Wer antwortet gerade auf was?), zum anderen passt dann auch der Titel nicht nur zu einem Drittel des Themas |
Meine Ergänzung dazu: Auch die Suchfunktion wird durcheinander gebracht. Wer erwartet denn, dass unter der Überschrift "Boxing" etwas zum "Heap" steht?
Und mit Deinem zweiten Versuch der Frage liegst Du immer noch daneben - zwei Fragen, die (fast) nichts miteinander zu tun haben, gehören nun einmal nicht zusammen.