「Vlax-safearray-fill」の版間の差分
(ページの作成: ; 構文 : (vlax-safearray-fill ''var'' '''element-values'') ; 機能 : セーフ配列の要素にデータを格納する。 ; 引数 :* var : データ タイプがセー…) |
編集の要約なし |
||
5行目: | 5行目: | ||
; 機能 | ; 機能 | ||
: セーフ配列の要素にデータを格納する。 | : セーフ配列の要素にデータを格納する。 | ||
; 引数 | ; 引数 | ||
:* var : データ タイプがセーフ配列の変数。 | :* var : データ タイプがセーフ配列の変数。 | ||
:* 'element-values : 配列に格納する値のリスト。配列の要素と同数の変数を指定することができる。要素数よりも少ない値しか指定しなかった場合は、残りの要素は現在の値を保持する。多次元配列に対しての element-values 引数は、各リストが配列の次元数に一致した、リストのリストでなければならない。 | :* 'element-values : 配列に格納する値のリスト。配列の要素と同数の変数を指定することができる。要素数よりも少ない値しか指定しなかった場合は、残りの要素は現在の値を保持する。多次元配列に対しての element-values 引数は、各リストが配列の次元数に一致した、リストのリストでなければならない。 | ||
; 戻り値 | ; 戻り値 |
2020年8月30日 (日) 06:40時点における最新版
- 構文
- (vlax-safearray-fill var 'element-values)
- 機能
- セーフ配列の要素にデータを格納する。
- 引数
-
- var : データ タイプがセーフ配列の変数。
- 'element-values : 配列に格納する値のリスト。配列の要素と同数の変数を指定することができる。要素数よりも少ない値しか指定しなかった場合は、残りの要素は現在の値を保持する。多次元配列に対しての element-values 引数は、各リストが配列の次元数に一致した、リストのリストでなければならない。
- 戻り値
- var
- サンプル
- 倍精度実数の 1 次元配列を作成する。
(setq sa (vlax-make-safearray vlax-vbdouble '(0 . 2))) #<safearray...>
- vlax-safearray-fill 関数を使用して、配列に値を代入する。
(vlax-safearray-fill sa '(1 2 3)) #<safearray...>
- 配列の内容をリストにする。
(vlax-safearray->list sa) (1.0 2.0 3.0)
- vlax-safearray-fill 関数を使用して、配列の最初の要素を設定する。
(vlax-safearray-fill sa '(-66)) #<safearray...>
- 配列の内容をリストにする。
(vlax-safearray->list sa) (-66.0 2.0 3.0)
- 配列の最初の要素だけが変更されたことに注意。残りの要素には影響がなく、以前それらに設定された値が保持されている。2 番目または 3 番目の要素を変更し、最初の要素はそのままにしておきたいときは、vlax-safearray-put-element 関数を使用する。
- 要素が 3 つしかない配列の 4 番目の要素を設定するように、vlax-safearray-fill 関数に命令する。
(vlax-safearray-fill sa '(1 2 3 4)) エラー: safearray-fill が失敗しました. 初期化リストが不正です.
- 配列の要素よりも多くの要素を指定すると、vlax-safearray-fill 関数はエラーを返す。
- 複数次元の配列に値を割り当てるには、vlax‑safearray-fill 関数に、次元に対応する各リストからなるリストを指定する。 次のコマンドは、各次元に 3 要素を含む文字列の 2 次元配列を作成する。
(setq mat2 (vlax-make-safearray vlax-vbString '(0 . 1) '(1 . 3))) #<safearray...>
- vlax-safearray-fill 関数を使用して、配列に値を代入する。
(vlax-safearray-fill mat2 '(("a" "b" "c") ("d" "e" "f"))) #<safearray...>
- mat2 の内容を確認するには、vlax‑safearray‑>list 関数を使用する。
(vlax-safearray->list mat2) (("a" "b" "c") ("d" "e" "f"))
関連事項