Re: Delegate? Bahnhof!

Tech Tip: Click here to run a free scan for Windows Errors and optimize PC performance



Macht es doch nicht so kompliziert.
Beispiele helfen mehr als jede wissenschaftliche Erklärung:

Im Endeffekt geht es darum Funktionen anhand ihrer Signatur zu typisieren.

Function Compare (Value1 as Object, Value2 as Object) as Integer

Hat die Signatur, daß zwei Objekte in die Funktion hereinkommen und ein
Integer Wert herauskommt.

Einen solche Signatur kannst Du unter einem Namen festlegen und hast damit
einen Typ. In .NET heißt das Ding dann Delegate. Der Vorteil gegenüber
Konstrukten in anderen Sprachen, wo man einfach einen Zeiger auf die
Funktion hat, ist der, daß man durch die Festlegung auf die Signatur, zur
Compilezeit gewährleisten kann, daß da auf jeden Fall eine Methode mit
dieser Signatur kommt.

Wozu kann ich sowas verwenden? Diesen Compare Delegate kann man zum Beispiel
in einer Sortierfunktion verwenden. Ich erwarte in meiner Funktion eine
ArrayList von Objekten und einen Compare-Delegaten, der mir -1 für Value1 <
Value2, 0 für Value1=Value2 und 1 für Value1 > Value2 liefert. Schon kann
ich meine Sortierfunktion allgemein nutzen und muß beim Ansteuern nur eine
Funktion mitliefern, die diese Signatur hat und die Logik sinnvoll
implemntiert.

Gruß
Gerald



"Uwe Kuehne" <ukmailings@xxxxxxxxxxxxxxxxxxxxxx> schrieb im Newsbeitrag
news:OtMUnGKXFHA.2288@xxxxxxxxxxxxxxxxxxxxxxx
> Hallo Peter,
>
> da muß ich passen, ich hab kein IT-Studium vorzuweisen, nur Selbststudium
> aus Büchern, MSDN, OH und NG....
>
>> Indirekte Adressierung sind Grundlagen, die jeder Prozessor beherrscht
>> und am Anfang eines jeden IT-Studiums stehen.
>
> Grüße,
>
> Uwe
>


.



Relevant Pages

  • Re: Hashcode: Warum geht das?
    ... Integer hat eine eigene hashCode Implementierung, ... Integer is uebrigens keine gute Klasse fuer ne Telefonnummer. ... führende Nullen wegfallen? ... korrekt abgetrennte Signatur ist keine Signatur ... ...
    (de.comp.lang.java)
  • Re: Compilerfehler unter VISTA, nicht unter XP
    ... Fehler 103 Die Methode "Private Sub uteMONAT_EditorButtonClick(sender As ... Object, e As Infragistics.Win.UltraWinEditors.EditorButtonEventArgs)" kann ... sie nicht die gleiche Signatur ...
    (microsoft.public.de.german.entwickler.dotnet.vb)