Variable Variablen?



  • V 9 1 9 V schrieb:

    Hi,

    Ich würde gerne einmal wissen, wie man variable Variablen in C/C++ definieren kann?

    gar nicht, C und C++ kennen keine variable Variablen, wie meine Vorgänger bereits erwähnt haben. Unter C++ hast du aber std::map, damit könntest du so etwas in der Art machen, ähnlich wie die asso. Array von PHP, wo das Key variabel ist.



  • supertux schrieb:

    V 9 1 9 V schrieb:

    Hi,

    Ich würde gerne einmal wissen, wie man variable Variablen in C/C++ definieren kann?

    gar nicht, C und C++ kennen keine variable Variablen

    Und nebenbei gesagt, ist mir in C/C++ auch noch nichts untergekommen, wo man sowas hätte brauchen können. Dafür gibt es idR andere Möglichkeiten.



  • groovemaster schrieb:

    supertux schrieb:

    V 9 1 9 V schrieb:

    Hi,

    Ich würde gerne einmal wissen, wie man variable Variablen in C/C++ definieren kann?

    gar nicht, C und C++ kennen keine variable Variablen

    Und nebenbei gesagt, ist mir in C/C++ auch noch nichts untergekommen, wo man sowas hätte brauchen können. Dafür gibt es idR andere Möglichkeiten.

    dito, mir auch nie, nicht mal mit PHP musste ich sowas benutzen.



  • Liegt warscheinlich daran, dass viele mit C angefangen haben und solche Möglichkeiten zu umgehen verstehen 🙂



  • Ohne jetzt den Thread korrumpieren zu wollen - Was haltet ihr generell von Reflection?



  • mmh - köntne man nicht ähnliches mit generischen Zeiger erreichen?



  • masterofx32 schrieb:

    Ohne jetzt den Thread korrumpieren zu wollen - Was haltet ihr generell von Reflection?

    Was hat das mit dem Thread zu tun?

    Variable variablen haben nichts mit herkoemmlicher Reflection zu tun...



  • Wieso nicht? Ich kann mir mit Reflection dynamisch Typ- und Laufzeitinformationen holen. Darunter fällt auch der Inhalt von Variablen, zu denen ich den Namen kenne. Was sind für dich "herrkömmliche" Reflection?



  • abcguestabc schrieb:

    Was sind für dich "herrkömmliche" Reflection?

    Auf einem anderen Level. Soetwas wie 'Variable auslesen' wirkt wie ein Hack.

    Reflection ist praktisch um zu testen ob ein bestimmtes Interface eingehalten wird oder um eine Funktion aufzurufen ohne den Typen zu kennen...

    Variable variablen braucht man dagegen eigentlich nie, weil sie nichts anderes als ein Array sind - und das kann man auch sauberer machen.

    zB in PHP sieht man manchmal soetwas
    global $ { $foo };
    das ist nichts anderes als GLOBALS[foo] nur unlesbar.

    oft sieht man variable variablen aber auch so:
    {var.$i}
    was ja im prinzip wieder nur ein array ist.

    während reflection auf einer anderen ebene verwendet wird, zB instanziierungen von Objekten deren Typ man nur zur laufzeit kennt.



  • Aber variable Variable kann ich mir mit Reflections recht gut nachbilden ohne eine Tabelle zu nutzen.
    Na ja, liegt wohl vor allem daran, dass ich Reflections sehr weit fasse. Das geht vom abfragen von Typinformatioen über das enumerieren von Objekten Methoden, Variablen, ... bis hin zum dynamischen Generieren von ausführbaren Code zur Laufzeit.



  • supertux schrieb:

    dito, mir auch nie, nicht mal mit PHP musste ich sowas benutzen.

    Dann hast du wahrscheinlich noch nicht viel mit PHP gemacht. Ich habe jetzt gerade kein Beispiel, aber ich habe sehr viel mit PHP programmiert und variable Variablen waren oft sehr sinnvoll, z.B. in einem Template-System.
    AFAIK benutzt die Eingabemaske des Posting erstellens variable Variablen. Oder irgendein anderes Formular.

    Ich habe es jetzt mit Pointern gelöst, was eine wesentlich bessere Methode ist. Ich habe halt noch in PHP gedacht. 😉



  • V 9 1 9 V schrieb:

    supertux schrieb:

    dito, mir auch nie, nicht mal mit PHP musste ich sowas benutzen.

    Dann hast du wahrscheinlich noch nicht viel mit PHP gemacht.

    doch, sehr viel sogar. Aber ich hab sowas nie gebraucht, dafür habe ich schöne PHP Arrays, die variable Keys haben, und das genügt mir.



  • Shade Of Mine schrieb:

    masterofx32 schrieb:

    Ohne jetzt den Thread korrumpieren zu wollen - Was haltet ihr generell von Reflection?

    Was hat das mit dem Thread zu tun?

    Variable variablen haben nichts mit herkoemmlicher Reflection zu tun...

    Ja, das habe ich ja eingeräumt, aber trotzdem nett, dass du es nochmal erwähnst.

    Reflection bedeutet, dass man die Möglichkeit hat, zur Laufzeit Informationen über seine Programmstruktur zu erhalten. Und wenn man in PHP zur Laufzeit mit dem Variablennamen arbeitet, um auf den Wert der Variablen zuzugreifen, dann ist das definitiv Reflection.


Anmelden zum Antworten