Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
1 Einführung
2 Grundlagen
3 Fehlerbehandlung
4 Erweiterte Grundlagen
5 Objektorientierte Programmierung
6 Wichtige Klassen in .NET
7 Weitere Elemente eines Windows-Programms
8 Datenbank-Anwendungen mit ADO.NET
9 Internet-Anwendungen mit ASP.NET
10 Zeichnen mit GDI+
11 Neues in Visual Basic 2008
12 Beispielprojekte
A Installation
B Lösungen der Übungsaufgaben
Stichwort

Download:
- ZIP, ca. 8,4 MB
Buch bestellen
Ihre Meinung?

Spacer
 <<   zurück
Einstieg in Visual Basic 2008 von Thomas Theis
Inkl. zahlreicher Beispiele und Uebungen
Buch: Einstieg in Visual Basic 2008

Einstieg in Visual Basic 2008
geb., mit DVD
442 S., 24,90 Euro
Galileo Computing
ISBN 978-3-8362-1192-5
Online bestellenJetzt online bestellen
* versandkostenfrei in (D) und (A)
Pfeil 5 Objektorientierte Programmierung
  Pfeil 5.1 Was ist Objektorientierung?
  Pfeil 5.2 Klasse, Eigenschaft, Methode, Objekt
    Pfeil 5.2.1 Objektverweis und Instanz
  Pfeil 5.3 Eigenschaftsmethode
  Pfeil 5.4 Konstruktor
  Pfeil 5.5 Referenzen und Werte
    Pfeil 5.5.1 Objekte vergleichen
  Pfeil 5.6 Statische Elemente
  Pfeil 5.7 Delegates
  Pfeil 5.8 Ereignisse
  Pfeil 5.9 Namespaces
  Pfeil 5.10 Vererbung
  Pfeil 5.11 Konstruktoren bei Vererbung
  Pfeil 5.12 Polymorphie
  Pfeil 5.13 Schnittstellen


Galileo Computing - Zum Seitenanfang

5.7 Delegates  topZur vorigen Überschrift

Signatur

Bei Prozeduren und Funktionen ist es bekanntlich wichtig, sie mit den richtigen Parametern aufzurufen. Anzahl, Reihenfolge und Datentyp der Parameter, sowie bei Funktionen der Rückgabewert dienen zur eindeutigen Kennzeichnung. Man nennt dies auch die Signatur. Diese Eindeutigkeit gilt auch für die Prozeduren und Funktionen innerhalb einer Klasse, also für die Methoden.

Delegate

Ein Delegate dient dazu, die Signatur einer Methode nach außen bekannt zu machen. Er verweist auf die Funktion und sorgt dafür, dass sie nur mit den richtigen Parametern aufgerufen werden kann.

Im nachfolgenden Beispiel wird eine Funktion max() verwendet, um das Maximum von zwei Zahlen zu ermitteln. Diese Funktion wird allerdings nicht direkt aufgerufen, sondern über den Delegate, also über den Verweis auf die Funktion:

Public Class frm0506 
   Delegate Function maxdelegate(_ 
      ByVal x As Double, _ 
      ByVal y As Double) As Double 
 
   Function max(ByVal x As Double, ByVal y As Double) As _ 
   Double 
      If x > y Then 
         max = x 
      Else 
         max = y 
      End If 
   End Function 
 
   Private Sub cmdAnzeigen_Click( ... ) Handles ... 
      Dim a As Double = 12 
      Dim b As Double = 17 
      Dim maxverweis As New maxdelegate(AddressOf max) 
      lblAnzeige.Text = maxverweis(a, b) 
   End Sub 
End Class

Zur Erläuterung:

  • Zu Beginn wird mit dem Schlüsselwort Delegate ein »Delegierter« für eine Funktion deklariert, die zwei Double-Variablen erwartet und eine Double-Variable als Ergebnis zurückliefert.
  • Die Funktion max() ermittelt das Maximum von zwei Double-Zahlen, die als Parameter übermittelt werden und liefert das Maximum der beiden Zahlen zurück.

    AddressOf

  • In der Ereignisprozedur wird ein Verweis vom Typ des vorher deklarierten Delegates erzeugt. Bei der Erzeugung wird ihm mit dem Schlüsselwort AddressOf die Adresse der Funktion max() zugewiesen. Er verweist also jetzt auf diese Funktion.
  • Dieser Verweis wird dann wie die Funktion selber aufgerufen und führt dazu, dass die Funktion mit den übergebenen Parametern ausgeführt wird.
  • Die Anweisung lblAnzeige.Text = max (a, b) hätte zum gleichen Ergebnis geführt, mit dem Unterschied, dass über den Delegate die Funktions-Signatur auch nach außen bekannt ist. Die Funktion kann nicht mehr falsch aufgerufen werden.


Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.






 <<   zurück
  Zum Katalog
Zum Katalog: Einstieg in Visual Basic 2008






Einstieg in Visual Basic 2008
bestellen
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchtipps
Zum Katalog: Visual Basic 2008






 Visual Basic 2008


Zum Katalog: Einstieg in Visual C++ 2008






 Einstieg in
 Visual C++ 2008


Zum Katalog: Einstieg in Visual C# 2008






 Einstieg in
 Visual C# 2008


Zum Katalog: Visual C# 2008






 Visual C# 2008


Zum Katalog: Visual C# - Video-Training






 Visual C# -
 Video-Training


Zum Katalog: Einstieg in PHP 5 und MySQL 5






 Einstieg in PHP 5
 und MySQL 5


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo





Copyright © Galileo Press 2008
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Galileo Computing]

Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de