Next: , Previous: , Up: Lists   [Contents][Index]


5.6 既存のリスト構造の変更

プリミティブsetcarsetcdrでコンスセルのCARおよびCDRのコンテンツを変更できます。これらは既存のリスト構造を変更するので破壊的な操作です。破壊的操作はmutable(変更可能)なリスト、すなわちconslist、または類似の操作により構築される必要があります。クォートにより作成されたリストはプログラムの一部であり、破壊的な操作により変更するべきではありません。Mutabilityを参照してください。

Common Lispに関する注意: Common Lispはリスト構造の変更にrplacarplacdを使用する。これらはsetcarsetcdrと同じ方法でリスト構造を変更するが、setcarsetcdrは新しいCARCDRをリターンするのにたいして、Common Lispの関数はコンスセルをリターンする。