String in Variabel konvertieren?

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Indize sind nun mal keine Strings. An diesem Grundsatz wirst du in Pawn nicht vorbei kommen. Ohnehin ist es unsinnig, einfach ungeprüft irgendwelche Strings als Index zu nehmen. Nachher ist da ein ungültiges Zeichen drin und dir schmiert mindestens mal die Funktion, wenn nicht sogar das ganze Script ab.
    Aber es geht ja ohnehin nicht. Pawn wird ja bekanntlich kompiliert und alle Variablen und Indize müssen zur kompilierzeit bekannt sein.
  • Du hast vier verschiedene Lösungsansätze hier im Thread, die alle zu dem führen, was du wolltest. "Nicht möglich" trifft es da nicht ganz.
    Hast du denn einen davon mal ausprobiert?


    42656e schrieb:

    Pawn wird ja bekanntlich kompiliert und alle Variablen und Indize müssen zur kompilierzeit bekannt sein.
    Jein, bei PVars ist das zum Beispiel nicht notwendig. Diese können frei gefüllt verwendet werden.
    So könnte man beispielsweise Items zur Laufzeit aufnehmen, ohne den Code zu verändern.
  • Jeffry schrieb:

    Du hast vier verschiedene Lösungsansätze hier im Thread, die alle zu dem führen, was du wolltest. "Nicht möglich" trifft es da nicht ganz.
    Hast du denn einen davon mal ausprobiert?


    42656e schrieb:

    Pawn wird ja bekanntlich kompiliert und alle Variablen und Indize müssen zur kompilierzeit bekannt sein.
    Jein, bei PVars ist das zum Beispiel nicht notwendig. Diese können frei gefüllt verwendet werden.So könnte man beispielsweise Items zur Laufzeit aufnehmen, ohne den Code zu verändern.
    PVars sind keine Variablen in dem Sinn. PVars sind einfach nur Wrapper für Mappings, die im Hintergrund letztlich in diversen Arrays abgelegt werden. Das macht das ganze aber nicht nur langsamer sondern erzeugt bei gleicher Nutzdatenmenge auch noch einen ordentlichen Overhead. Mit Variablen ist das nicht zu verwechseln. Die müssen nach wie vor bereits zur Kompilierzeit bekannt sein.