Einzelnen Beitrag anzeigen

EdAdvokat

Registriert seit: 1. Mai 2016
Ort: Berlin
415 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#11

AW: Verwendung von Interface - Verständnisfrage

  Alt 13. Mär 2022, 15:22
vielen Dank an alle.
Ich habe die Berechnung übungsweise bewußt mit Feldern gestaltet, um die Frage zu klären, wie man damit umgeht, dass in Interface keine Felder deklariert werden können. (also Cast)
Daraus ergibt sich für mich folgendes:
1. Wenn schon Interface genutzt werden, dann unbedingt und möglichst immer eine Referenz auf Interface, also var irendwas: IblaInterface;
2. Für die Referenzzählung und damit zur Vermeidung der manuellen Freigabe von Objecten ist die Referenzierung auf Interface notwendig. Ist dafür die Verwendung von
IInterfacedObject als Teil der Objectzuweisung (also beispielsweise TFlaeche = class(TInterfacedObject, ITextValue) unbedingt notwendig oder reicht es für die
Referenzzählungsfrage auch aus nur IInterface zuzuweisen?
3. Auch im Fall der Klasse: TFlaeche = class(TInterfacedObject, ITextValue) nicht auf TFlaeche referenzieren sondern immer beispielsweise auf ITextValue, also auf ein Interface.
4. In die Deklaration des Interface soweit wie möglich alle Methoden und ggf. Eigenschaften (Properties) aufnehmen, die für die Klasse dann gebraucht werden.

Frage 2 Antwort?
Liege ich sonst mit den 4 Punkten so richtig?

Frage an Blup: wie sieht das entspr. Interface dazu aus? So richtig verstanden habe ich die Deklaration der Funktion nicht.
function CreateMyInterface(AParam1, AParam2: Integer): IMyIntegerface;
Norbert
  Mit Zitat antworten Zitat