Title:

C# und NET

Home
deutsch
  
ISBN: 3836211726   ISBN: 3836211726   ISBN: 3836211726   ISBN: 3836211726 
 
|<< First     < Previous     Index     Next >     Last >>|
  Wir empfehlen:       
 

- 3 - Vereinigungstypen Weiterhin ist es in C# möglich, Vereiniguntstypen (union) mit Hilfe der strukturierten Typen zu emulieren. Dieses ist jedoch nicht so einfach, wie es z. B. in Pascal der Fall ist. Es müssen dazu nämlich spezielle Compiler-Attribute gesetzt werden, wo die Posi- tion der einzelnen Werte im Speicher manuell gesetzt wird. Hierbei muß weiterhin an- gemerkt werden, dass es sich bei Vereinigungstypen nicht um einen eigenständigen Da- tentyp in C# handelt, sondern die Möglichkeit der Konstruktion von Unions nur dafür gedacht ist, die Kompatibilität zu Funktionen und Methoden zu gewährleisten, die einen Union-Typ  als  Parameter  erwarten.  Dies  ist  üblicherweise  nur  dann  der  Fall,  falls  es sich bei der Methode, die aufgerufen werden soll, um die Methode eines entfernten Ob- jekts handelt, also im Fall einer verteilten Applikation. Aufgrund dieses nur zu Kompatibilitätszwecken verwendbaren Datentyps gestaltet sich der Umgang damit auch äußerst umständlich, wie folgendes Beispiel verdeutlicht: [StructLayout(LayoutKind.Explicit)] //Compileranweisung struct Union{ //FallA und FallB auf die gleiche Speicheradresse setzen [FieldOffset(0)] public int FallA; [FieldOffset(0)] public int FallB; } //Aufruf in Methode Union myUnion = new Union(); myUnion.FallA = 5; myUnion.FallB = 6: Console.WriteLine(myUnion.FallA); //liefert 6 Delegates Bei einem Delegate handelt es sich um eine Art Variable für Methoden. Das heißt, dass in  einem  Delegate  die  Signatur  einer  Methode  festgelegt  wird  (Parameter,  Rückgabe- wert usw.), und dann eine beliebige Methode, die diese Signatur erfüllt, dem Delegate zugewiesen werden kann. Ein Aufruf des Delegate delegiert dann die Parameter an die Methode weiter, die ihm zugewiesen wurde. Dazu folgendes Beispiel: public delegate void delegiere(string text); public void schreibeAusgabe(string ausgabe){…} delegiere myDelegate = new delegiere(schreibeAusgabe); myDelegate(“Hallo Welt!“); //delegiere Ausgabe Üblicherweise  wird  ein  Delegate  aber  dazu  verwendet,  um  call-backs  zu  realisieren. Dabei  wird  einer  Methode  ein  Delegate,  ein  Funktionszeiger  sozusagen,  übergeben. Nachdem die Methode ihre Anweisungen abgearbeitet hat, ruft sie die via Delegate ü-
  
Visual C# 2008: Das umfassende Handbuch (Galileo Computing)
Siehe auch:
C# 2008 Codebook (C Sharp)
Windows Presentation Foundation: Das um...
Datenbankprogrammierung mit Visual C sharp 20...
Visual C# 2008 Kompendium: Windows-Programmieru...
C#
von Kopf bis Fuß
Microsoft Visual C# 2008 - Entwicklerbuch. Grundla...
 
   
 
     
|<< First     < Previous     Index     Next >     Last >>| 

Back to the topic site:
StudyPaper.com/Startseite/Computer/Informatik/Programmieren

External Links to this site are permitted without prior consent.
   
  Home  |  deutsch  |  Set bookmark  |  Send a friend a link  |  Copyright ©  |  Impressum