Referenz - BYVAL (Schlüsselwort)
Syntax: OPTION BYVAL
Typ: Klausel
Kategorie: Programmoptionen
Mit dieser Zeile wird festgelegt, dass die Parameter, die an SUBs und FUNCTIONs übergeben werden, standardmäßig BYVAL behandelt werden sollen. Die Option kann nur bis FreeBASIC v0.16 eingesetzt werden, oder in entsprechend höheren Versionen, die mit der Kommandozeilenoption -lang deprecated compiliert wurden! Wird mit FreeBASIC v0.17 unter der Option -lang fb compiliert, so ist OPTION BYVAL nicht mehr zulässig!
Ist OPTION BYVAL aktiviert, muss explizit die BYREF-Klausel angewandt werden, um Variablen per Referenz zu übergeben. Wird OPTION BYVAL nicht bestimmt, geht FreeBASIC davon aus, dass alle Parameter standardmäßig BYREF übergeben werden sollen. In diesem Fall werden Variablen außer Arrays und UDTs standardmäßig BYVAL übergeben; benutzen Sie explizit die BYREF-Klausel, um dem entgegen zu wirken.
Achtung: Die Verwendung von BYVAL mit variablen STRINGs kann zu Problemen führen, wenn dieser String das ASCII-Zeichen '0' enthält! Bei der Übergabe des Strings an einen BYVAL-deklarierten String-Parameter wird der String ab dem ASCII-Zeichen '0' abgeschnitten. Für die Übergabe von variablen Strings an Funktionen sollten daher BYREF oder Strings fester Länge verwendet werden.
Unterschiede zu QB: neu in FreeBASIC
Unterschiede zu früheren Versionen von FreeBASIC:
Die Option ist nur bis FreeBASIC v0.16 erlaubt. Seit FreeBASIC v0.17 ist diese Option nur noch zulässig, wenn mit der Kommandozeilenoption -lang deprecated compiliert wurde.
Siehe auch:
BYVAL (Klausel), BYREF, OPTION, __FB_OPTION_BYVAL__, DECLARE, SUB, FUNCTION, Prozeduren, Parameterübergabe
Zusätzliche Informationen und Funktionen | ||||
---|---|---|---|---|
|