Ergebnis 1 bis 10 von 10

Thema: C# - Dynamische Bennung von Variablennamen

  1. #1

    C# - Dynamische Bennung von Variablennamen

    Hi!

    Meinen Algorythmus will ich objektorientiert und codesparend aufziehen. Dabei ergab sich bei mir folgendes Problem:

    Ich möchte Variablen dynamisch bennen. So ungefähr stell ich mir das vor:

    Code:
    public void Funktion (string/ Variablenname)
    {
       int Row_<Variablenname> = 0;
       [...]
       Liste.Add(Row_<Variablenname>);
       //d.h. ich will die Variable später noch ansprechen können
    }
    Die Variable wird später in einer Arrayliste abgelegt. Wenn die Variablen dann mit dynamischen Namen drinnen liegen würde, wäre es ein Hit (aber für meinen Code ist es dennoch nicht notwendig. Nur für die Übersicht). Klar könnte ich dem Objekt ein Attribute string name geben, aber hier bin ich mal überhaupt neugierig auf die Möglichkeit von dynamischen Namen.

    Versteht ihr was ich damit meine? Wie Programmiere ich so etwas? Ich kenne die Syntax dazu nicht oder ob so etwas eigentlich möglich ist.

  2. #2
    Ich hab bisschen gesucht und einen entsprechenden Thread auf myCSharp.de gefunden: http://www.mycsharp.de/wbb2/thread.php?threadid=14011
    Da wird das sehr gut erkärt.

  3. #3
    Ah verstehe. Jo im Endeffekt ist es wirklich besser so wenn es solche Dinge nicht gibt.

    Danke für die Antwort!

  4. #4
    Es gibt exakt eine mir bekannte Sprache, die so etwas erlaubt: PHP. Tatsächlich kenne ich niemanden, der es tatsächlich benutzt, da man die gleiche Funktionalität auch mit erheblich saubereren und sichereren Mitteln erreichen kann.

  5. #5
    gehen tut das sicher mit allen progsprachen^^ wenn ichs richtig verstanden hab @.@''

  6. #6
    Zitat Zitat von R.D. Beitrag anzeigen
    gehen tut das sicher mit allen progsprachen^^ wenn ichs richtig verstanden hab @.@''
    Hast du offensichtlich nicht.

  7. #7
    Wieso sollte man auch eine Variable während der Laufzeit umbennen wollen?
    Ich sehe da keinen Sinn drinnen.

  8. #8
    Zitat Zitat von Jesus_666 Beitrag anzeigen
    Es gibt exakt eine mir bekannte Sprache, die so etwas erlaubt: PHP. Tatsächlich kenne ich niemanden, der es tatsächlich benutzt, da man die gleiche Funktionalität auch mit erheblich saubereren und sichereren Mitteln erreichen kann.
    Hmm.. mit Hifle einer eval-Funktion müsste das theoretisch eigentlich auch in diversen anderen Scriptsprachen gehen (Javascript z.B.

    eval(An_die_Funktion_uebergebener_Variablennamen_String = "Wert")

    ....AFAIR gibts ja eval auch in PHP). Weiß aber nicht welche Sprachen eine solche Funktion nochmitbringen. Aber das Schlüsselwort ist hier glaub ich "Scriptsprachen". In kompilierten Sprachen kann ich mir kaum vorstellen, wie das gehen soll. Kann mich aber auch irren..
    Da es ja aber auch Javascript .NET gibt, könnte es EVENTUELL sein, dass du dir hierüber eine Assembly basteln kannst, die du dann in C# verwenden kannst. Ich hab das jetzt keinesfalls genau durchdacht (und hab auch noch nie mit Javascript .NET zu tun gehabt) - aber vielleicht ist das ein Ansatz!?

    Wart mal...
    ...
    ...
    mal sehen..

    ..

    Hm.... Google hat mich da tatsächlich auf Folgendes gebracht:
    http://www.odetocode.com/code/80.aspx

    k.A. ob dir das aber tatsächlich hilft ^^" .

  9. #9
    Gibt es nicht C# Script in der .NET Runtime? Duerfte gehen, ist aber dennoch unsinnig, da sich dynamische Variabeln ueber Arrays viel sinnvoller verwalten lassen. Hab die Dinger noch nichtmal bei PHP jemals genutzt.

  10. #10
    In PHP brauch man sie eig. auch nur für den Zugriff und nicht für die Deklaration. Ich habes z.B. eben gerade erst für den kontrollierten Zugriff auf die globalen Request-Arrays gebraucht. (Da ja $_REQUEST, auch _COOKIE enthält, was man ja eig. nicht immer will).



    mfG

    Geändert von Xardas der Dunkle (17.05.2008 um 22:05 Uhr)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •