文字列の操作 への移動
次の Delphi コンパイラ指令は、文字および文字列の型を操作します。
文字列用のコンパイラ指令
指令
|
説明
|
{$H+/-}
|
コンパイラ指令 $H は、予約語 string が短い文字列と長い文字列のどちらを表すかを制御します。 デフォルトの状態、{$H+} では、string は長い文字列を表します。 これを ShortString に変更するには、{$H-} 指令を使用します。
|
{$P+/-}
|
$P 指令は、{$H-} 状態でコンパイルされたコードにのみ意味があり、下位互換性のために提供されています。 $P は、{$H-} 状態で string キーワードを使って宣言された変数パラメータの意味を制御します。 {$P-} 状態では、string キーワードを使って宣言された変数パラメータは通常の変数パラメータですが、{$P+} 状態では、オープン文字列パラメータになります。 $P 指令の設定にかかわらず、OpenString 識別子は、オープン文字列パラメータの宣言に常に使用できます。
|
{$V+/-}
|
$V 指令は、変数パラメータとして渡された短い文字列の型チェックを制御します。 {$V+} の状態では、厳密な型チェックが行われ、仮パラメータと実パラメータが同一の文字列型であることを要求します。 {$V-} の状態では、短い文字列型の変数はすべて実パラメータとして使用できます。宣言された最大長が仮パラメータの最大長と同じでなくてもかまいません。 これにより、メモリ破壊を引き起こす可能性がある点に留意してください。 例: var S: string[3];
procedure Test(var T: string);
begin
T := '1234';
end;
begin
Test(S);
end.
|
{$X+/-}
|
{$X+} コンパイラ指令は、組み込み PChar 型と 0 始まりの文字配列に提供される特殊な規則を有効にして、ヌル終端文字列に対するサポートを有効にします。 (これらの規則により、0 始まりの配列および文字ポインタが、System ユニットの Write、Writeln、Val、Assign、Rename で使用できるようになります)。
|
関連項目