[前へ] [目次へ] [次へ]

PIntArray2D (ネイティブクラス)


このクラスはネイティブ整数二次元配列を扱うクラスです。

このクラスの配列要素はFGESにおけるオブジェクトではなく、
C++レベルで確保および管理されています。
そのため、配列要素とのやり取りは必ずデータがコピーされ、
配列要素への直接の参照を取得することができません。
その代わり、このクラスの配列要素はC++レベルの高速なコードで処理を行えます。

●継承

   このクラスは継承をしていません。

●インターフェイスとインターフェイスメソッド

   このクラスはインターフェイスの実装宣言をしていません。

●クラスメソッド

   このクラスはクラスメソッドを持っていません。

●クラスメンバメソッド

名前概要
public取得メソッドconst #operator[]指定した要素番号の値を取得します
public取得メソッドconst Get指定した要素番号の値を取得します
public設定メソッド Set要素を代入します
public操作メソッド SetAdd要素に値を加算します
public操作メソッド SetSub要素に値を減算します
public操作メソッド SetMul要素に値を乗算します
public操作メソッド SetDiv要素に値を除算します
public取得メソッドconst GetArray指定した要素番号の配列を取得します
public設定メソッド SetArray配列要素を代入します
public操作メソッド Alloc要素を確保します
public操作メソッド Reserve要素数を変更せずにメモリを確保します
public操作メソッド Move要素を移動します
public操作メソッド Pushひとつの要素を末尾に追加します
public操作メソッド Pop末尾の要素をひとつ削除します
public操作メソッド UnShiftひとつの要素を先頭に追加します
public操作メソッド Shift先頭の要素をひとつ削除します
public操作メソッド Reverse配列の並びを逆にします
public操作メソッド Insertひとつの要素を指定位置に挿入します
public操作メソッド Erase指定した要素を削除します
public操作メソッド Exchange指定した二つの要素を交換します
public操作メソッド AllClear配列を完全にクリアします
public操作メソッド AllUnLock要素を全て削除します
public取得メソッドconst GetCount要素数を取得します
public比較・判定メソッドconst IsValidIndex指定した要素番号が有効か判定します
public操作メソッド Sort要素を整列します

●クラス共有変数

   このクラスはクラス共有変数を持っていません。

●インスタンス変数

   このクラスはインスタンス変数を持っていません。


●C++レベル追加情報

クラスID: FGES_CLASSID_PINTARRAY2D
クラス名: FGESPIntArray2D



PIntArray2D::#operator[]

public readonly Integer #operator[]( IInteger index1, IInteger index2)const

   この二次元配列の index1 番の配列の index2 番の要素の値を返します。
   このメソッドは指定した要素番号が無効な場合、例外が発生します。

   このメソッドは最初に各引数から INativeInteger による取得を試みます。
   これに失敗した場合、 IInteger@@Get を呼び出します。

戻り値:指定した要素番号の値を返します。

IInteger index1 :取得する要素番号1(0起算)
IInteger index2 :取得する要素番号2(0起算)

先頭へ


PIntArray2D::Get

public readonly Integer Get( IInteger index1, IInteger index2)const

   この二次元配列の index1 番の配列の index2 番の要素の値を返します。
   このメソッドは指定した要素番号が無効な場合、例外が発生します。
   
   このメソッドは最初に各引数から INativeInteger による取得を試みます。
   これに失敗した場合、 IInteger@@Get を呼び出します。

   このメソッドは #operator[] と同じ動作です。

戻り値:指定した要素番号の値を返します。

IInteger index1 :取得する要素番号1(0起算)
IInteger index2 :取得する要素番号2(0起算)

先頭へ


PIntArray2D::Set

public Bool Set( IInteger index1, IInteger index2, IInteger val)

   この二次元配列の index1 番の配列の index2 番の要素に val を代入します。
   このメソッドは指定した要素番号が無効な場合、偽を返し何も行いません。

   このメソッドは最初に各引数から INativeInteger による取得を試みます。
   これに失敗した場合、 IInteger@@Get を呼び出します。

戻り値:代入に成功すると真を返します。

IInteger index1 :設定する要素番号(0起算)
IInteger index2 :設定する要素番号(0起算)
IInteger val :設定する値

先頭へ


PIntArray2D::SetAdd

public Bool SetAdd( IInteger index1, IInteger index2, IInteger val)

   この二次元配列の index1 番の配列の index2 番の要素に val を加算します。
   このメソッドは指定した要素番号が無効な場合、偽を返し何も行いません。

   このメソッドは最初に各引数から INativeInteger による取得を試みます。
   これに失敗した場合、 IInteger@@Get を呼び出します。

戻り値:処理に成功すると真を返します。

IInteger index1 :処理対象の要素番号(0起算)
IInteger index2 :処理対象の要素番号(0起算)
IInteger val :加算する値

先頭へ


PIntArray2D::SetSub

public Bool SetSub( IInteger index1, IInteger index2, IInteger val)

   この二次元配列の index1 番の配列の index2 番の要素に val を減算します。
   このメソッドは指定した要素番号が無効な場合、偽を返し何も行いません。

   このメソッドは最初に各引数から INativeInteger による取得を試みます。
   これに失敗した場合、 IInteger@@Get を呼び出します。

戻り値:処理に成功すると真を返します。

IInteger index1 :処理対象の要素番号(0起算)
IInteger index2 :処理対象の要素番号(0起算)
IInteger val :減算する値

先頭へ


PIntArray2D::SetMul

public Bool SetMul( IInteger index1, IInteger index2, IInteger val)

   この二次元配列の index1 番の配列の index2 番の要素に val を乗算します。
   このメソッドは指定した要素番号が無効な場合、偽を返し何も行いません。

   このメソッドは最初に各引数から INativeInteger による取得を試みます。
   これに失敗した場合、 IInteger@@Get を呼び出します。

戻り値:処理に成功すると真を返します。

IInteger index1 :処理対象の要素番号(0起算)
IInteger index2 :処理対象の要素番号(0起算)
IInteger val :乗算する値

先頭へ


PIntArray2D::SetDiv

public Bool SetDiv( IInteger index1, IInteger index2, IInteger val)

   この二次元配列の index1 番の配列の index2 番の要素に val を除算します。
   このメソッドは指定した要素番号が無効な場合や、 val が0の場合、偽を返し何も行いません。

   このメソッドは最初に各引数から INativeInteger による取得を試みます。
   これに失敗した場合、 IInteger@@Get を呼び出します。

戻り値:処理に成功すると真を返します。

IInteger index1 :処理対象の要素番号(0起算)
IInteger index2 :処理対象の要素番号(0起算)
IInteger val :除算する値

先頭へ


PIntArray2D::GetArray

public Bool GetArray( IInteger index,editable PIntArray intarray)const

   この二次元配列の index 番の配列を intarray にコピーします。
   このメソッドは指定した要素番号が無効な場合、偽を返し何も行いません。
   
   このメソッドは最初に index から INativeInteger による取得を試みます。
   これに失敗した場合、 index.Get を呼び出します。

戻り値:取得に成功すると真を返します。

IInteger index :取得する要素番号(0起算)
editable PIntArray intarray :[出力]コピーを保存する配列オブジェクト。

先頭へ


PIntArray2D::SetArray

public Bool SetArray( IInteger index, PIntArray intarray)

   この二次元配列の index 番の配列に intarray をコピーして保存します。
   このメソッドは指定した要素番号が無効な場合、偽を返し何も行いません。
   
   このメソッドは最初に index から INativeInteger による取得を試みます。
   これに失敗した場合、 index.Get を呼び出します。

戻り値:取得に成功すると真を返します。

IInteger index :設定する要素番号(0起算)
PIntArray intarray :設定する配列オブジェクト。

先頭へ


PIntArray2D::Alloc

public SelfType@ Alloc( IInteger count)

   この二次元配列の要素数を count まで増やします。
   count がこの二次元配列の要素数より少ない場合、何も起こりません。

   このメソッドは最初に count から INativeInteger による取得を試みます。
   これに失敗した場合、 count.Get を呼び出します。

   このメソッドはメモリの確保に失敗した場合、例外が発生します。
   
戻り値: this を返します。

IInteger count :確保する要素数

先頭へ


PIntArray2D::Reserve

public SelfType@ Reserve( IInteger count)

   この二次元配列の要素数を変更せずに count 分のメモリを準備します。
   このクラスは必要な場合、自動的にメモリを確保するため
   通常はこのメソッドを明示的に呼び出す必要はありません。
   このメソッドはパフォーマンスを最適化するためだけに存在します。

   このメソッドは最初に count から INativeInteger による取得を試みます。
   これに失敗した場合、 count.Get を呼び出します。

   このメソッドはメモリの確保に失敗した場合、例外が発生します。
   
戻り値: this を返します。

IInteger count :確保する要素数

先頭へ


PIntArray2D::Move

public SelfType@ Move( IInteger target, IInteger dst, IInteger count=1)

   この二次元配列の target 番から count 個の要素を dst 番に移動します。

   このメソッドは最初に各引数から INativeInteger による取得を試みます。
   これに失敗した場合、 IInteger@@Get を呼び出します。

   指定した要素番号が無効な場合例外が発生します。

戻り値: this を返します。

IInteger target :移動元の要素番号(0起算)
IInteger dst :移動先の要素番号(0起算)
IInteger count=1 :移動する要素数

先頭へ


PIntArray2D::Push

public SelfType@ Push( PIntArray intarray)

   この二次元配列の末尾に要素を追加します。

戻り値: this を返します。

PIntArray intarray :追加した要素に設定する配列

先頭へ


PIntArray2D::Pop

public SelfType@ Pop(editable PIntArray? output=NULL)

   この二次元配列の末尾の要素を削除します。
   output に有効な参照を指定すると、削除した要素の配列が出力されます。
   二次元配列に要素がない場合、例外が発生します。

戻り値: this を返します。

editable PIntArray? output=NULL :[出力]削除した配列を出力するオブジェクト。空参照の場合無視します。

先頭へ


PIntArray2D::UnShift

public SelfType@ UnShift( PIntArray intarray)

   この二次元配列の先頭に要素を追加します。

戻り値: this を返します。

PIntArray intarray :追加した要素に設定する配列

先頭へ


PIntArray2D::Shift

public SelfType@ Shift(editable PIntArray? output=NULL)

   この二次元配列の先頭の要素を削除します。
   output に有効な参照を指定すると、削除した要素の配列が出力されます。
   二次元配列に要素がない場合、例外が発生します。

戻り値: this を返します。

editable PIntArray? output=NULL :[出力]削除した配列を出力するオブジェクト。空参照の場合無視します。

先頭へ


PIntArray2D::Reverse

public SelfType@ Reverse()

   この二次元配列の要素の並びを逆順にします。

戻り値: this を返します。

先頭へ


PIntArray2D::Insert

public SelfType@ Insert( IInteger index, PIntArray intarray)

   この二次元配列の index 番に要素を挿入します。
   追加された要素は指定した要素番号になります。
   
   このメソッドは最初に index から INativeInteger による取得を試みます。
   これに失敗した場合、 index.Get を呼び出します。

   指定する要素番号は追加後に有効な番号でなければいけません。

戻り値: this を返します。

IInteger index :挿入する要素番号(0起算)
PIntArray intarray :挿入した要素に設定する配列

先頭へ


PIntArray2D::Erase

public SelfType@ Erase( IInteger target, IInteger count=1)

   この二次元配列の target 番から count 個の要素を削除します。
   削除した要素より後ろに要素がある場合、削除した数分番号が詰められます。

   このメソッドは最初に各引数から INativeInteger による取得を試みます。
   これに失敗した場合、 IInteger@@Get を呼び出します。

   指定した要素番号が無効な場合例外が発生します。

戻り値: this を返します。

IInteger target :削除する要素番号(0起算)
IInteger count=1 :削除する要素数

先頭へ


PIntArray2D::Exchange

public SelfType@ Exchange( IInteger index1, IInteger index2)

   この二次元配列の index1 番と index2 番の要素を交換します。

   このメソッドは最初に各引数から INativeInteger による取得を試みます。
   これに失敗した場合、 IInteger@@Get を呼び出します。

   指定した要素番号が無効な場合例外が発生します。

戻り値: this を返します。

IInteger index1 :対象の要素番号(0起算)
IInteger index2 :対象の要素番号(0起算)

先頭へ


PIntArray2D::AllClear

public SelfType@ AllClear()

   この配列の全ての要素を削除し、メモリも解放します。

   このメソッドは要素管理用のメモリも解放します。
   配列をリセットしてすぐに再使用する場合は AllUnLock を使用すべきです。

戻り値: this を返します。

先頭へ


PIntArray2D::AllUnLock

public SelfType@ AllUnLock()

   この配列の全ての要素を削除します。
   
   このメソッドは要素管理用のメモリは解放しません。
   配列をリセットしてすぐに再使用する場合は AllClear より適切です。

戻り値: this を返します。

先頭へ


PIntArray2D::GetCount

public Integer GetCount( IInteger? index=NULL)const

   この二次元配列または要素配列の要素数を返します。
   index が空参照である場合、二次元配列の要素数を返します。
   index に有効な参照が指定された場合、対応する要素配列の要素数を返します。
   この時、指定した要素番号が無効な場合、例外が発生します。

   このメソッドは最初に index から INativeInteger による取得を試みます。
   これに失敗した場合、 index.Get を呼び出します。

戻り値:この二次元配列、または指定した要素配列の要素数を返します。

IInteger? index=NULL :要素数を取得する要素配列の要素番号(0起算)
                  空参照の場合は二次元配列自体の要素数を返します。

先頭へ


PIntArray2D::IsValidIndex

public Bool IsValidIndex( IInteger index1, IInteger index2)const

   各 index がこの二次元配列の要素番号として有効か判定します。

   このメソッドは最初に各引数から INativeInteger による取得を試みます。
   これに失敗した場合、 IInteger@@Get を呼び出します。

戻り値:各 index がこの二次元配列の要素番号として有効であれば真を返します。

IInteger index1 :判定する要素番号1。
IInteger index2 :判定する要素番号2。

先頭へ


PIntArray2D::Sort

public SelfType@ Sort( IInteger index)

   この二次元配列内の指定した要素配列を昇順に整列します。
   このメソッドは指定した要素番号が無効な場合、例外が発生します。

   このメソッドは最初に index から INativeInteger による取得を試みます。
   これに失敗した場合、 index.Get を呼び出します。

戻り値: this を返します。

IInteger index :整列する要素配列の要素番号(0起算)

先頭へ


[前へ] [目次へ] [次へ]

最終更新 2023/01/21