1

vbscript で変数に割り当てられたメモリを解放する方法はありますか?

例: x=10 このステートメントが実行されると、メモリが割り当てられ、値がそのメモリに格納されます。

その記憶を解放する方法はありますか?

実行が終了するか、変数が関数の範囲外になると、メモリが自動的に解放されることはわかっていますが、解放する方法はありますか?

4

4 に答える 4

2

消去ステートメント

固定サイズの配列の要素を再初期化し、動的配列の記憶領域の割り当てを解除します。

長い文字列に対して ""代入すると、ガベージ コレクターが孤立した長いテキストの割り当てを解除する可能性があります。

数字や日付のメモリを再利用しようとすると、無駄な作業になります。

于 2013-04-07T09:42:01.153 に答える
2

各変数は、存在するまでいくらかのメモリを使用しNothing Is Objectました。

Set myObj = Nothing
WScript.Echo "IsObject = " & IsObject(myObj)
WScript.Echo "IsNothing = " & (myObj Is Nothing)
'>> IsObject = True
'>> IsNothing = True

(注:Is演算子は 2 つのオブジェクト参照変数を比較します。)

于 2013-04-07T21:56:53.173 に答える
1

それがオブジェクトの場合は、それを Nothing に設定するだけです

于 2013-04-07T06:36:41.250 に答える
0

オブジェクト変数に割り当てられたメモリは、変数を @StephenConnolly が言及したように設定することで解放Nothingできます

Set var = Nothing

スカラー変数に割り当てられたメモリを解放する明示的な方法はありません。

于 2013-04-07T08:17:49.853 に答える