sVarstringchecks/de
Zurück zu den lokalen Compiler Direktiven.\
==$VARSTRINGCHECKS und $V== Die Compiler Direktiven $VARSTRINGCHECKS und $V sind in Ihrer Verwendung Synonym.
Die Compiler Direktive $VARSTRINGCHECKS, legt fest, wie streng der Compiler bei der Prüfung von Zuweisungen von Datentypen vom Typ String ist.
Die Compiler Direktive $V kennt zwei Schalter + und -.
Die Compiler Direktive $VARSTRINGCHECKS kennt zwei Schalter ON und OFF.\
Beispiel für einen Fehler:
{$V+} // Schaltet die strenge Zuweisungskontrolle einprocedure subTest(var strUebergabe: shortString);
begin
showmessage(strUebergabe);
end;procedure TForm1.Button1Click(Sender: TObject);
var
strWert : String[12];
begin
strWert:='123456789012';
subTest(strWert);
end;Das obige Beispiel erzeugt folgende Fehlermeldung:
unit1.pas(45,20) Error: String types have to match exactly in $V+ mode\
Die Fehlermeldung kommt daher, das beide Strings zwar vom Datentyp shortstring sind, aber eine unterschiedliche Länge haben.\
Beispiel für ein fehlerfreies compilieren:
{$V-} //Schaltet die strenge Zuweisungskontrolle ausprocedure subTest(var strUebergabe: shortString);
begin
showmessage(strUebergabe);
end;procedure TForm1.Button1Click(Sender: TObject);
var
strWert : String[12];
begin
strWert:='123456789012';
subTest(strWert);
end;--Olaf 10:17, 27 January 2013 (UTC)
From the Free Pascal wiki, page "sVarstringchecks/de", as it stood on 2013-04-21 after a change by Olaf, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.