NULL KEY/de
LSL Portal | Funktionen | Ereignisse | Typen | Konstanten | Datenflusskontrolle | Script Sammlung | Tutorien |
Beschreibung
Konstante: string NULL_KEY = "00000000-0000-0000-0000-000000000000";Die string Konstante NULL_KEY hat den Wert "00000000-0000-0000-0000-000000000000"
Während es eigentlich eine Zeichenkette ist, ist sie nur als key von Nutzen.
Davon abgesehen dass sie die Kriterien für einen gültigen key erfüllt, wird sie als FALSE gewertet, wenn sie in einer Bedingung aufgerufen wird.
Ähnliche Artikel
Funktionen
• | llAvatarOnSitTarget | |||
• | llDetectedKey | |||
• | llGetNotecardLine | |||
• | llGetLandOwnerAt | |||
• | llGetPermissionsKey | |||
• | llGetTexture | |||
• | llListen |
Ereignisse
• | attach |
Beispiele
<lsl>integer isKey(key in) {
if(in) return 2; return (in == NULL_KEY);
}//gibt 2 zurück wenn es ein gültiger key ist, und gibt 1 für den NULL_KEY</lsl>
Notizen
Wie jede String Konstante mit mehr als 3 Zeichen, die an mehreren Stellen im Code verwendet wird, sollte sie als globale Variable gespeichert werden. Dies resultiert in beträchtlicher Speicherersparnis. Siehe LSL Konstanten vs Globale Variablen für weitere Informationen und Beispiele.
In den meisten Fällen muss NULL_KEY von nöten, da eine leere Zeichenkette ("") oft ausreicht. Um davon zu profitieren müssen bestimmte Praktiken vermieden werden. In vielen Anwendungen werden keys mit dem NULL_KEY verglichen um zu prüfen, ob diese keys gültig sind. Dies ist schlechtes vorgehen.
LSL macht es einem leicht zu testen, ob ein key gültig ist. Nutze den key einfach als Parameter für eine Bedingung.
Anstelle von if(uuid != NULL_KEY)
, nutze if(uuid)
. if(uuid)
wird nur dann TRUE liefern, wenn es sich um einen gültigen key handelt der nicht der NULL_KEY ist.