970
コメント:
|
1011
|
削除された箇所はこのように表示されます。 | 追加された箇所はこのように表示されます。 |
行 11: | 行 11: |
. {{attachment:chain39.png}} 処理はこのように書けます。 |
|
行 23: | 行 25: |
. {{attachment:chain39.png}} |
オブジェクトを除くメソッド
オブジェクトを除く場合でも、先頭を処理するほうが楽です。
例1
変数aがいくつかつながったオブジェクトを参照しており、 その先頭の1つのオブジェクトを除く場合です。
赤矢印でしめしたようにつなぎ変えることで、 並びから1つのオブジェクトを除くことができます。
処理はこのように書けます。
a = a.next;
処理の後では、 変数aからたどっていくと、赤いXで示したオブジェクトは参照できません。
赤いXで示したオブジェクトは消えてなくなったのではありません。
どこからも参照されていないオブジェクトは、 ごみ集め(ガーベッジコレクタ)が行われた時点で無くなります。