Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

$Order 関数 (1)

第 2 章では、ほとんどのデータを添え字に格納する ^PersonI インデックスを作成しました。ここでは、添え字に格納されたデータにどのようにしてアクセスするかを学習します。配列にノードが存在する場合、$Order 関数はその子ノードの添え字値を返します。添え字は自動的にソートされるため、$Order 関数は子ノードを名前順に検索します。

このためには、$Order に複数の添え字付き配列名を渡します。配列と最後に割り当てられた添え字以外の添え字は、ノードを識別します。最後の添え字は、$Order 関数が使用します。x 配列を使用した例では、$Order が集中した添え字が最初で唯一の添え字です。空文字列 ("") は配列の添え字には使用できませんが、$Order に渡される配列の添え字として使用できます$Order は、これにより、最初の有効な添え字値が返されます。

この例ではまず、$Order は有効な最初の添え字 1 を返します。その後残りの添え字を順番に返すので、1 を渡すと 4 を返します。4 を渡すと 9 を返します。9 を渡すと、それ以上有効な添え字がないことを示す空文字列を $Order は返します。

配列内に存在しない添え字の値を指定した場合、$Order は、その値の後にある次に有効な添え字を返します。

ターミナル


USER>write

x(1)=1
x(4)=2
x(9)=3
USER>write $order(x(""))
1
USER>write $order(x(1))
4
USER>write $order(x(4))
9
USER>write $order(x(9))

USER>write $order(x(2.5))
4
USER>write $order(x(8))
9
USER>
FeedbackOpens in a new tab