Next: Vector Functions, Previous: Array Functions, Up: Sequences Arrays Vectors [Contents][Index]
ベクター(vector)とは任意のLispオブジェクトを要素にもつことができる、一般用途のための配列です(対照的に文字列の要素は文字のみ。Strings and Charactersを参照)。Emacsではベクターはキーシーケンス(Key Sequencesを参照)、シンボル検索用のテーブル(Creating Symbolsを参照)、バイトコンパイルされた関数表現の一部(Byte Compilationを参照)などの多くの目的で使用されます。
他の配列と同様、ベクターは0基準のインデックスづけを使用し、1番目の要素はインデックス0になります。
ベクターは角カッコ(square
brackets)で囲まれた要素としてプリントされます。したがってシンボルa
、b
、a
を要素にもつベクターは、[a
b a]
とプリントされます。Lisp入力として同じ方法でベクターを記述できます。
文字列や数値と同様にベクターは定数として評価され、評価された結果は同じベクターになります。ベクターの要素は評価も確認もされません。Self-Evaluating Formsを参照してください。角カッコ(square
brackets)で記述されたベクターをaset
や他の破壊的操作を通じて修正しないでください。Mutabilityを参照してください。
以下はこれらの原理を表す例です:
(setq avector [1 two '(three) "four" [five]]) ⇒ [1 two '(three) "four" [five]] (eval avector) ⇒ [1 two '(three) "four" [five]] (eq avector (eval avector)) ⇒ t