Next: Sets And Lists, Previous: List Variables, Up: Lists [Contents][Index]
プリミティブsetcar
とsetcdr
でコンスセルのCARおよびCDRのコンテンツを変更できます。これらは既存のリスト構造を変更するので破壊的な操作です。破壊的操作はmutable(変更可能)なリスト、すなわちcons
、list
、または類似の操作により構築される必要があります。クォートにより作成されたリストはプログラムの一部であり、破壊的な操作により変更するべきではありません。Mutabilityを参照してください。
Common Lispに関する注意: Common Lispはリスト構造の変更に
rplaca
とrplacd
を使用する。これらはsetcar
やsetcdr
と同じ方法でリスト構造を変更するが、setcar
とsetcdr
は新しいCARやCDRをリターンするのにたいして、Common Lispの関数はコンスセルをリターンする。
• Setcar: | リスト内の要素の置き換え。 | |
• Setcdr: | リストの根幹部分の置き換え。これは要素の追加や削除に使用される。 | |
• Rearrangement: | リスト内の要素の再配置、リストの合成。 |