Funktionen Parameter als Array Index nutzen

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Morgen Breadfisher


    Ist es irgendwie in Pawn möglich einen Parameter einer Funktion als Index für ein Array zu benutzen?


    Gehen wir von einer Funktion aus:



    forward testfunktion(Float:x,Float:y,Float:z,anzahl);
    public testfunktion(Float:x,Float:y,Float:z,anzahl)
    {
    new array[anzahl];
    }

    Dann gibt er logischerweise den Error aus, dass 'anzahl' kein konstanter Wert ist.

    Zitat

    error 008: must be a constant expression; assumed zero


    Ich möchte aber nicht von vorne herein eine Array Größe festlegen, da das den Nutzer einschränkt und einfach unnötig Speicher belegt.


    Ich habe übrigens auch schon folgendes versucht, jedoch mit gleichem Error:

    forward testfunktion(Float:x,Float:y,Float:z,const anzahl);
    public testfunktion(Float:x,Float:y,Float:z,const anzahl)
    {
    new array[anzahl];
    }


    Hat da jemand eine Lösung für parat? Da pawn nicht Objekt Orientiert ist, kann man leider auch nicht so einfach eine verkettete Liste erstellen (damit wärs dann kein Problem mehr)


    edit: Push nach Forenregel III.2:
    Letzter Post: 21.06.2013, 12:27
    Edit am: 23.06.2013, 13:44
    edit2: edit: Push nach Forenregel III.2:
    Letzter Post: 23.06.2013, 13:44
    Edit am: 27.06.2013, 17:33

    2 Mal editiert, zuletzt von Hagi ()