publi in einer Funktion?
-
Hallo zusammen, ich habe eine Frage: kann ich in einer Funktion meiner Klasse eine variable, welche als public bekannt ist, deklarieren? ich meine a la so:
void __fastcall TMyClass::MyFunction(void) { if (Bedingung) vartyp1 variable_pub; // deklaration einer public variable else vartyp2 variable_pub; // deklaration einer public variable <code> </code> }
-
kannst du gar nicht.
du kannst die beiden deklarieren und je nach der bedingung machst du mit einer ióder der anderen was.void __fastcall TMyClass::MyFunction(void) { vartyp1 variable1; // deklaration einer variable vartyp2 variable2; // deklaration einer variable if (Bedingung) mach_irgendwas_mit_variable1; else mach_irgendwas_mit_variable2; ... }
-
Ron: Erkläre mal genau was du damit erreichen willst, mich beschleicht das Gefühl das Problem liesse sich eleganter lösen....
-junix
-
Vielleicht noch ergänzend eine Erklärung wieso das nicht funktioniert: Membervariablen sind lediglich zur Compile-Zeit bekannt und auch relevant. Im Endeffekt liegen die Dinger auch irgendwo im Speicher. Die Tatsache, dass das Membervariablen sind dient lediglich dem Compiler zur überprüfung ob der Zugriff auf die Variablen auch mit rechten Dingen zu geht.
-junix
-
junix schrieb:
Ron: Erkläre mal genau was du damit erreichen willst, mich beschleicht das Gefühl das Problem liesse sich eleganter lösen....
-junix
hm, hat sich von selbst gelöst, ich hatte ein Geistes-Blitz, welcher ich hier aber nicht näher ausführen möchte, da der technische Hintergrund fehlt und ich mega mässig viel schreiben müsste. Desshalb, trozdem Danke für die "Hilfe". :)Jetzt weiss ich etwas mehr...
-
Es wäre trotzdem schön, wenn du uns an deiner Lösung teilhaben lassen würdest...
Schreibs doch mal wenn du Zeit hast...-junix