Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.034 Beiträge
 
Delphi 12 Athens
 
#2

AW: Property OHNE getter/setter überschreiben?

  Alt 19. Dez 2016, 11:16
Funktion "immer" ändern nur, wenn man die "virtuellen" Getter/Setter überschreibt (override).

In Nachfahren bestimmte Dinge überschreiben ändern/erweitern, indem man das Property ohne Typdefinition nochmal mit den gewünschten Änderungen deklariert.
Delphi-Quellcode:
type
  TMyBase = class
    property Xyt: Integer ...;
  end;

  TMyClass1 = class(TMyBase)
    property Xyt default 123; // nur Default ändern
  end;

  TMyClass2 = class(TMyBase)
    property Xyt read abc; // nur Getter ändern
  end;

  TMyClass3 = class(TMyBase)
    property Xyt write def default 666; // nur Setter und Default ändern
  end;

  TMyClass4 = class(TMyBase)
    property Xyt: Integer ...; // komplett neues Property ... kann auch 'nen anderen Typ haben, aber wehe jemand macht nochmal soeinen Schrott, wie bei TField.Value :böseguck:
  end;
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (19. Dez 2016 um 11:18 Uhr)
  Mit Zitat antworten Zitat