Implementieren Sie eine Delphi-Schnittstelle mit einer 'anonymen' Klasse

8

Ich habe eine Schnittstelle.

%Vor%

Ich habe die Schnittstelle mit einer benannten Klasse wie folgt implementiert:

%Vor%

Ist es möglich, eine Instanz dieser Schnittstelle zu erstellen, ohne eine Klasse zu deklarieren? Etwas wie dieser (imaginäre) Code, der dasselbe wie oben tun würde:

%Vor%

Delphi hat anonyme Prozeduren, aber hat es anonyme Klassen?

Ich fand diese ähnliche Frage , aber es ist in Java.

Ich benutze Delphi 2010

    
awmross 22.07.2011, 06:24
quelle

2 Antworten

17

Sie können ziemlich anonym werden und die Schnittstelle mit anonymen Methoden implementieren. Sie erhalten jedoch keine eigentliche Compiler-Unterstützung, Sie müssen alle anonymen Methodentypen selbst deklarieren und dann die eigentliche "anonyme" Klasse implementieren. Wenn Sie Ihre IProgressObserver -Schnittstelle verwenden, sieht die Implementierung ungefähr so ​​aus:

%Vor%

Sobald all dieser Code vorhanden ist, können Sie einen Code wie diesen schreiben:

%Vor%

Sieht für mich ziemlich anonym aus! Angesichts der Implementierung von anonymen Methoden in Delphi ist es auch ziemlich schnell und effektiv.

    
Cosmin Prund 22.07.2011, 07:03
quelle
5

Kurze Antwort Ich fürchte: Entschuldigung, nein, Delphi hat keine anonymen Klassen.

    
Marjan Venema 22.07.2011 06:30
quelle

Tags und Links