![]() |
Re: Delphi <> Java : static class
Hallo,
bei der Verwendung von Klassenvariablen und -konstanten muß beachtet werden, daß sich alle Instanzen eine Variable bzw. Konstante teilen:
Delphi-Quellcode:
Das von BomberBB gewünschte Verhalten läßt sich (in allen Delphi-Versionen) mit Objekttypen realisieren, die auch eine Vererbung ermöglichen:
type
TTest = class (TObject) private class var FMyProp: Integer; public class property MyProp: Integer read FMyProp write FMyProp; end; var T1, T2 : TTest; begin T1.MyProp := 42; T2.MyProp := 0; ShowMessage (IntToStr(T1.MyProp)); // Ausgabe: '0'! end;
Delphi-Quellcode:
Eine Warnung sei aber angebracht:
type
TString = object private FValue : string; public procedure ConvertFromInt (aNumber: Integer); property Value: string read FValue write FValue; end; procedure TString.ConvertFromInt (aNumber: Integer); begin Value := IntToStr(aNumber); end; var MyString : TString; begin MyString.ConvertFromInt(42); ShowMessage (MyString.Value); end; Zitat:
Gruß Hawkeye |
Re: Delphi <> Java : static class
Zitat:
|
Re: Delphi <> Java : static class
@Hawkeye219
Danke, genau das hab ich gesucht. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:18 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz