System.MarshaledString
Delphi
type MarshaledString = ^Char;
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
pointer | public | System.pas | System | System |
説明
NULL 終端 Unicode 文字列を表します。
MarshaledString は、WideChar 値(#0 文字を含む)が格納されているメモリ領域を指すポインタを表します。
MarshaledString は PChar のエイリアスです。
メモ:
- MarshaledString と通常の string 値を一緒に使用することは本質的に危険です。MarshaledString 変数は参照カウントされず、コピーオンライトも行われません。その結果、string 値の破損やメモリ リークが起きるおそれがあります。
- ポインタの排除という考え方に従い、かつ将来に目を向けると、新しい Delphi 次世代モバイル コンパイラには、外部の API やライブラリとのより明示的な形式のデータ マーシャリングが必要になります。詳細については、「デスクトップ アプリケーションからモバイル アプリケーションへの Delphi コードの移行」を参照してください。