Kurze Abfragen in Pawn

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
  • - Kurze Abfragen -



    Hallo Liebe Community,


    Ich möchte euch mal die Sache mit verkürzten Abfragen vorstellen,
    viele kennen diese Abfragen noch nicht daher möchte euch kurz erklären
    wie komplex sie sind zudem auch sehr nützlich & lassen sich schnell von der Hand schreiben.



    Beispiel Funktionen


    test(param0,param1)return (param0 == 2) ? (5) : (7);



    Eine Simple Abfrage gleich im Code eingebunden um extra Zeile zu vergäuden,
    das ganze ist eigentlich ganz Simple da


    (param0 == 2)


    sowieso Wahr/Falsch zurückgibt ergibt dies schon das Direkte Ergebnis jedoch möchten wir in
    diesem Fall darüber entscheiden daher stellen wir eine eigen Anweisung bereit


    ?


    Dieses Zeichen eröffnet unsere eigene Rückgabe, danach geben wir den Rückgabewert an der
    an den Code übergeben werden in dem Falle das es stimmt.


    :


    Dieses Zeichen stellt eine andere Möglichkeit da, sprich wenn die Anweisung nicht stimmen sollte
    so wird der Standardwert wiedergegeben den wir angeben, der Standardwert ist ein muss bei dem ganzen denn
    sollte alles nicht stimmen so muss ein Standardwert enthalten sein damit wir kein Nullverweis erhalten bzw. einen
    Speicherfehler, Pawn wird euch so oder so darauf hinweisen.


    Wenn ihr mehrere Abfragen erstellen möchtet bzw. mehrere Möglichkeiten...


    return (param0 == 2) ? (5) : (param1 == 7) ? (8) : (9);


    zerlegen wir das ganze mal...


    (param0 == 2) ? (5) : // IF
    (param1 == 7) ? (8) : // ELSE IF
    (9); // ELSE



    Wie ihr seht habt ihr alle Möglichkeiten die eine normale Abfrage auch bietet, da man aber leicht die Übersicht
    verlieren kann sollte man sich das ganze immer zerlegen um sich das ganze immer genau anzuschauen & eventuell zu
    gucken ob auch alles stimmt danach kann man es wieder in den Normal Zustand versetzen & weiterarbeiten, nur ein Tipp ^^


    Das besondere bei diesem Abfragen ist das man sie Direkt in Parameter verpflanzen kann so das die Rückgabe & Entscheidung sofort
    zum Ergebnis führen kann, jedoch muss die Rückgabe immer den Typ wiedergeben der erfordert wird.


    Beispiel :


    print((param0 == 2) ? ("Hallo Welt") : ("Hallo Woot"));


    Gibt je nach dem den gewünschten text wieder , je nach dem wie die Entscheidung ausfällt.



    So, ich hoffe ich konnte euch hiermit ein Stück weiterhelfen


    mfg. BlackFoX_UD_


    // Nochmal editiert & etwas besser erklärt.

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


    Einmal editiert, zuletzt von BlackFoX ()