Einzelnen Beitrag anzeigen

hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#1

W1009: Redeklaration verbirgt ein Mitglied in der Basisklasse

  Alt 30. Dez 2010, 14:23
Delphi-Version: 5
Hallo #,

ich erweitere eine Klasse Base.
Dazu habe ich eine neue Klasse von Base abgeleitet.
Ein Property muss in meiner Ableitung aber einen anderen Datentyp haben,
geht leider nicht anderes.

type
Base = class;
property FontName: AnsiString;
end;

type
Sub = class(Base)
property FontName: Integer;
end;

Warnung W1009 wird angezeigt.

Schreibe ich das jetzt so

type
Sub = class(Base)
{$WARNINGS OFF}
property FontName: Integer;
{$WARNINGS ON}
end;

ist die Warnung weg.

In der OH steht:
Die Direktive $WARNINGS kann nur für ganze Prozeduren oder Funktionen verwendet werden. Die Angabe von $WARNINGS ist nicht bei Anweisungsblöcken in einer Prozedur oder Funktion möglich.


Was gilt denn jetzt für Properties ?.



Noch ein Hinweis:
Ich soll einen Wrapper für einfaches Benutzen zweier völlig verschiedener Klassen (Druck, PDF-Export) bauen,
ohne dass Code bei deren Benutzung geändert werden soll.
Die Druckklasse definiert ein property FontName als Integer, die andere als String.

Daran kann ich aber nichts ändern.



Heiko
Heiko
  Mit Zitat antworten Zitat