AW: Werte von Variablen der Hauptklasse innerhalb einer abgeleiteten Klasse verwenden
Seit Delphi 2006 gibt es Klassenvariablen, das müsste das sein, was Du suchst.
|
AW: Werte von Variablen der Hauptklasse innerhalb einer abgeleiteten Klasse verwenden
Zitat:
|
AW: Werte von Variablen der Hauptklasse innerhalb einer abgeleiteten Klasse verwenden
Du könntest mit einer globalen Variablen hantieren. Das ist zwar nicht sonderlich fein, aber eine andere Möglichkeit will mir nicht einfallen.
|
AW: Werte von Variablen der Hauptklasse innerhalb einer abgeleiteten Klasse verwenden
Ja, man ist dann wohl gezwungen das Ganze mit globalen Variablen zu machen, die Klassenvariablen wurden schließlich nicht umsonst eingeführt.
Nun gut, damit hat sich das Problem auch schon gelöst, ich danke für eure Hilfe, super Forum =). MfG, compix; |
AW: Werte von Variablen der Hauptklasse innerhalb einer abgeleiteten Klasse verwenden
Wenn Du die Klassen in einer Unit deklarierst, kannst Du die globale Variable zumindest im implementation-Abschnitt deklarieren, damit nicht jeder Hansl da rankommt.
[edit] Beispiel: Unit Testklassen:
Delphi-Quellcode:
MainUnit:
type
TElternklasse = class public procedure IncX; procedure ShowX; end; TKindklasse = class(TElternklasse) end; implementation var X: integer; { TElternklasse } procedure TElternklasse.IncX; begin inc(X, 10); end; procedure TElternklasse.ShowX; begin ShowMessage(Classname + ': ' +IntToStr(X)); end;
Delphi-Quellcode:
[/edit]
uses Testklassen;
procedure TFormTest.Button1Click(Sender: TObject); var ClassA: TElternklasse; ClassB: TKindKlasse; begin ClassA := TElternklasse.Create; try ClassA.IncX; ClassA.ShowX; ClassB := TKindklasse.Create; try ClassB.IncX; ClassB.ShowX; ClassA.ShowX; finally ClassB.Free; end; finally ClassA.Free; end; end; |
AW: Werte von Variablen der Hauptklasse innerhalb einer abgeleiteten Klasse verwenden
Das ist in der Tat eine Möglichkeit, aber wenn es die Möglichkeit der Klassenvariablen gibt, dann ist diese natürlich vorzuziehen, auch der Übersichtlichkeit halber. So wie ich das von C++ kenne sollte schon alles schön in verschiedenen Bereichen, sprich in verschiedenen units, gelagert sein.
|
AW: Werte von Variablen der Hauptklasse innerhalb einer abgeleiteten Klasse verwenden
Da gebe ich Dir vollkommen Recht, nur ist diese Möglichkeit IIRC erst ab Delphi 2006 verfügbar. Du hast ja Deine verwendete Version leider nicht im Profil angegeben, aber zur Sicherheit kannst Du die Verfügbarkeit ja einfach prüfen, indem Du einmal eine Klassenvariable deklarierst und probierst, ob der Compiler das annimmt.
Delphi-Quellcode:
type
TTest = class protected class var Blubb: integer; end; |
AW: Werte von Variablen der Hauptklasse innerhalb einer abgeleiteten Klasse verwenden
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:09 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz