Delphiコンパイラ特性(特に修飾子文献、安全でない、揮発性、弱)

参考1
ローカル定数や読み出し専用変数のような定数パラメータでデルファイ。インビボで一定のパラメータ設定プロシージャまたはファンクションを与えない、他のパラメータ定数VARタイプのパラメータに渡すことができない以外は同様の定数パラメータおよびパラメータ値。(あなたはそれがオブジェクト参照である一定の引数を渡す場合は、あなたはまだ、オブジェクトのプロパティを変更することができます)

使用constがコードの構造と文字列型のパラメータを最適化するようにコンパイラを可能にします。そしてそれはまた、不注意に対する保護は、他のプロセスパラメータへの参照が渡されています。

定数パラメータは、使用するコンパイラに依存して、値またはファンクションモードへの参照によって渡されてもよいです。あなたが参照によって渡された定数パラメータを使用するようにコンパイラを強制したい場合は、constキーワードで[参照]修飾子を使用することができます。前のconstでは、constの後ろかもしれでき修飾子。

例えば:

FunctionNameは関数(CONST [参考文献]パラメーター1:Record1Name; [参考文献] CONSTパラメーター2:Class2Name);
2危険は、
コンパイラが自動的に参照カウント(ARC)は、それを無効にする結果となるよう、戻り値をマークするために使用されます。

[結果:安全でない]機能ReturnUnsafe: TObjectを、
システムユニットを除いて、非常にまれなケースでも、メンバ変数またはパラメータを変更するために使用することができます。それは、関連するコードの参照カウントが危険である生成しなかったので、しかし、そのような使用は、推奨されません。

3は揮発性
変数、パラメータをマークするために使用されることが一時レジスタ又はメモリ位置の最適化のコピーを生成しないように、フィールドメンバーは、別のスレッドによって修正されてもよいです。

入力
TMyClassクラス=
プライベート
[揮発] FMyVariable:TMyType;
END;
4弱い。
声明弱いです。

型の
TComponentの=クラス(TPersistentは、メソッドはIInterface、
IInterfaceComponentReference)
プライベート
[弱] FOwner:TComponentの;
---------------------
著者:tht2009
出典:CSDN
オリジナルます。https: //blog.csdn.net/tht2009/article/details/50465324
免責事項:この記事はブロガーのオリジナルの記事、再現され、ボーエンのリンクを添付してください!

 

おすすめ

転載: www.cnblogs.com/findumars/p/11128250.html