fortlaufende Variablennamen



  • Naja aber die namen stehen ja dann schon fest?! Er will das ganze ja dynamisch erzeugen, und variablennamen dynamisch erzeugen, ich weiß nicht, sollte doch nicht klappen oder nicht?!



  • Ich dachte eher an eine header-Datei in der die Variablennamen erzeugt werden können und später als Variablen deklariert werden.
    Ist sowas etwa nicht möglich?



  • Nein. Denn an sich gibt es keine Variablennamen. Ist ja keine Scriptsprache.



  • was ich genau suche ist die möglichkeit einen string (oder char) zu erzeugen der sich wie folgt zusammensetzt:
    "test_" + charVariable

    soll ergeben:
    test_1 oder test_2

    für den Fall, dass die charVariable 1 oder 2 ist.



  • der_guenn schrieb:

    Ich dachte eher an eine header-Datei in der die Variablennamen erzeugt werden können und später als Variablen deklariert werden.
    Ist sowas etwa nicht möglich?

    Anscheinend suchst Du eine Sourcecode-Generator (sprich: Du willst ein Programm, das Quellcode nicht auswertet (wie z.B. der Compiler), sondern erzeugt) ...
    Das ist in C++ nicht standardisiert, aber sowas kann man natürlich schreiben (ist nicht so schwer) - vielleicht kann man da auch was mit dem Präprozessor frickeln, aber das weiß ich nicht ... und will's eigetnlich auch gar nicht wissen 😉 .

    Aaaaaber: Die bierher wichtigste Frage solltest Du zuerst beantworten:

    Swordfish schrieb:

    @OP: Welches Problem glaubst Du damit lösen zu können?

    cheers, Swordfish

    Spätestens, wenn man anscheinend der Einzige, der ein Problem hat, sollte man mal einen Schritt zurücktreten und schauen, ob man sein Problem (für sich selbst) richtig formuliert hat.

    Nachtrag:

    der_guenn schrieb:

    ...soll ergeben: test_1 oder test_2
    für den Fall, dass die charVariable 1 oder 2 ist.

    Da Variablennamen sowieso wegcompiliert werden (= zur Laufzeit gar nicht mehr existieren), scheint Dein Ansatz sinnlos.
    ("charVariable IST ..." = Laufzeitaussage) <=> ("Variablenname lautet ..." = Compilezeitaussage)

    Gruß,

    Simon2.



  • der_guenn schrieb:

    was ich genau suche ist die möglichkeit einen string (oder char) zu erzeugen der sich wie folgt zusammensetzt:
    "test_" + charVariable

    soll ergeben:
    test_1 oder test_2

    für den Fall, dass die charVariable 1 oder 2 ist.

    std::string("test_") + charVariable
    

    Aber dann hast es halt nur als String. Es gibt nur Laufzeit keine Möglichkeit Variablen per Namen anzusprechen.

    Da hilft nur nur sowas wie std::map<std::string, int>. Oder halt Arrays, Vektoren etc.



  • Simon2 schrieb:

    Aaaaaber: Die bierher wichtigste Frage solltest Du zuerst beantworten: [...]

    Danke 😉

    cheers, Swordfish



  • folgendes will ich mach:

    this->variablenname->Location = System::Drawing::Point(a,b*20);

    das ganze kommt in eine Schleife (läuft von b=1 bis 20000) und in jeden Schleifendurchlauf erzeuge ich den variablenname, welcher sich wie folgt zusammensetzt test_<charVariable>

    da b als int vorliegt habe ich ihn in einen char ("charVariable") umgewandelt.
    jetzt will ich nur noch "test_" und charVariable zu einen Variablennamen zusammenfügen.

    ist ein wenig abstrakt gehalten das Programm



  • Fellhuhn, ich danke dir, habe gerade auch nach std::string gegooglet, scheint genau das zu sein was ich suchte



  • der_guenn schrieb:

    ist ein wenig abstrakt gehalten das Programm

    so kann man natuerlich auch dazu sagen...

    ich wuerd sagen, dir fehlt es an den Grundlagen... fuer sowas gibt es Arrays oder, wenn es dynamisch sein soll, Vektoren.



  • der_guenn schrieb:

    folgendes will ich mach:

    this->variablenname->Location = System::Drawing::Point(a,b*20);

    das ganze kommt in eine Schleife (läuft von b=1 bis 20000) und in jeden Schleifendurchlauf erzeuge ich den variablenname, welcher sich wie folgt zusammensetzt test_<charVariable>

    da b als int vorliegt habe ich ihn in einen char ("charVariable") umgewandelt.
    jetzt will ich nur noch "test_" und charVariable zu einen Variablennamen zusammenfügen.

    ist ein wenig abstrakt gehalten das Programm

    Es sind alle Objekte gleichartig. Da macht ein Vektor oder ein Array mehr Sinn. Wo wäre denn Deiner Meinung nach der Vorteil, wenn Du 20000 Variablennamen hast? Wie willst Du die 20000 einzelnen Variablen anschließend ansprechen?


Anmelden zum Antworten