Thread Klassendaten: Globale Variablen in Klassen (16 answers)
Opened by Gast at 2004-04-17 13:01

Crian
 2004-04-19 21:13
#81633 #81633
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Und warum machst Du dann etwas in new?
Dann überschreibst Du ja auch die Daten für schon existierende Objekte.

Alternative: eine andere Klassenmethode (init ...), die diesen Hash kopiert?
Falls Du Angst hast, dass der User vergißt die aufzurufen, setz bei Dir in der Klassendefinition den Hash auf undef und stirb in new mit einem Hinweis, dass init zu verwenden wäre, falls der Wert immer noch undef ist.

Oder liege ich völlig falsch (habe nicht alles ganz genau gelesen :blush: )


Edit: Anstatt den ganzen Hash dann per get auszuhändigen, könntest Du dann getter (und ev. keine setter) dafür schreiben, das wären dann aber auch Klassen- und keine Objektmethoden.

Falls Du nicht weißt, was da alles drinstehen mag, könntest Du AUTOLOAD dafür nehmen (hab ich bisher immer vermieden, aber es geht, wie mir gerade wieder in Erinnerung gerufen wurde ;-).


---------------



Oder aber Du erstellst Dir eine Config-Klasse, von der Du im Hauptprogramm einObjekt verwendest, und Deine anderen Klassen verwenden dann auch ein solches Objekt, oder aber erben davonm je nachdem, was besser wäre. (Wahrscheinlich ersteres, sonst wären es ja wieder Objektdaten.)


Hmmm ... das Hauptproblem löst das aber auch nicht.\n\n

<!--EDIT|Crian|1082395378-->
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite

View full thread Klassendaten: Globale Variablen in Klassen