AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Verhindern von Instanzierung eines Objekts mit Create
Thema durchsuchen
Ansicht
Themen-Optionen

Verhindern von Instanzierung eines Objekts mit Create

Ein Thema von warheart · begonnen am 24. Apr 2008 · letzter Beitrag vom 30. Mai 2008
 
warheart

Registriert seit: 24. Apr 2008
Ort: Bern
5 Beiträge
 
Delphi 2006 Professional
 
#1

Verhindern von Instanzierung eines Objekts mit Create

  Alt 24. Apr 2008, 10:35
Hallo Delphi Gemeinde

Meine erste Frage hier dreht sich um einen relativ komischen Wunsch, nicht so alltäglich.

Ich habe eine Klasse gemacht, die alle Methoden static hat und alle Membervariablen mit class var deklariert hat. Das Ganze ist nach diesem Beispiel von http://dn.codegear.com/article/34324 aufgebaut:
Delphi-Quellcode:
type
  TMyClass = class
    strict private
      class var
        FX: Integer;
    strict protected

    // Note: accessors for class properties must be declared class static.

      class function GetX: Integer; static;
     class procedure SetX(val: Integer); static;
    public
      class property X: Integer read GetX write SetX;
     class procedure StatProc(s: String); static;
  end;

TMyClass.X := 17;
TMyClass.StatProc('Hello');
Nun ist es allerdings immer noch möglich, den Constructor mit Create aufzurufen. Um allen potenziellen Benutzern der Klasse klar zu machen, dass man davon keine eigenen Instanzen machen darf, möchte ich das aufrufen von Create verbieten. Ist das irgendwie möglich?

Beispiel
Delphi-Quellcode:
TMyClass.StatProc('Hello'); // soll funktionieren
myObj := TMyClass.Create; // soll nicht funktionieren
Danke und Gruss an die Welt
************************************************** *
We have transformed information into a form of garbage, and ourselves into garbage collectors
(Neil Postman)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:37 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