% Accessor AREF
Accessor AREF
aref
array &rest
subscripts => element
(setf
(aref
array &rest
subscripts) new-element)
array - 配列
subscripts - arrayの有効な配列のインデックスのリスト
element, new-element - オブジェクト
subscriptsによって指定されたarrayの要素にアクセスします。
もしsubscriptsが指定されず、
arrayがゼロランクのときは、
aref
はarrayの唯一の要素にアクセスします。
aref
はfill-pointerを無視します。
aref
はアクティブかそうでないかに関わらず、
arrayの要素にアクセスするときに使用できます。
もし変数foo
が3×5の配列に束縛されているとき、
最初のインデックスは0
, 1
, 2
を指定でき、
2番目のインデックスは0
, 1
, 2
, 3
, 4
を指定できます。
この配列の要素はaref
関数を使用することによって参照できます。
例えば(aref foo 2 1)
は、(2, 1)
の配列の要素を参照します。
(aref (setq alpha (make-array 4)) 3) => implementation-dependent
(setf (aref alpha 3) 'sirens) => SIRENS
(aref alpha 3) => SIRENS
(aref (setq beta (make-array '(2 4)
:element-type '(unsigned-byte 2)
:initial-contents '((0 1 2 3) (3 2 1 0))))
1 2) => 1
(setq gamma '(0 2))
(apply #'aref beta gamma) => 2
(setf (apply #'aref beta gamma) 3) => 3
(apply #'aref beta gamma) => 3
(aref beta 0 2) => 3
なし。
なし。
bit
,
char
,
elt
,
row-major-aref
,
svref
,
3.2.1. コンパイラーの用語
なし。