- 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.