Entwickler-Ecke
Basistechnologien - Verständnisfrage zu Delegates
lapadula - Do 29.09.16 20:33
Titel: Verständnisfrage zu Delegates
Hallo, kann mir jemand simple erklären was delegates genau tun?
Soviel ich weiß ist das nur eine Referenz auf eine oder mehrere Methoden. Oder liege ich falsch?
Wie ist man vor Erfindung der delegates vorgegangen, also welches Problem lösen delegates?
Palladin007 - Do 29.09.16 21:02
Delegaten sind Typen, Referenz-Typen.
Sie beschreiben die vollständige Signatur einer Methode
Damit kannst Du dann eine Methode als variable speichern, Parameter übergeben, etc.
Du arbeitest dann mit der Referenz zu einer Methode.
Bei Java gibts dafür meines Wissens nach nur Interfaces mit sowas wie einer Run-Methode.
Da man in Java ein Interface aber auch inline implementieren und davon direkt eine Instanz erzeugen kann, funktioniert das als Ersatz für Delegaten.
Unter C++ kannst Du dir für eine Methode den Pointer geben lassen und den dann als Variable umher reichen.
Das machen Delegates einfacher. Du kannst sehr einfach eine feste Definition für eine Methode fest legen, ihr einen Namen verwenden und so definieren, was für eine Methode als Parameter erwartet wird.
lapadula - Do 13.10.16 08:35
Okay, sind also wie die Interfaces eine Art Schablone, so verstehe ich das jetzt.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2024 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!