Wide Studio Object Reference

Wide Studio Home
Up to


クラスの型

WSClistData

メソッド関数仕様



WSClistData 関数の説明

書式
WSClistData()
機能
リストデータ構造体のコンストラクタです。 リストデータのインスタンスを一つ作成します。
処理
引数
なし。
返値
リストデータのインスタンスへのポインタ
注意
サンプル
   WSClistData  listdata;
   long data1 = 100;
   long data2 = 200;

   //データを記憶させます。
   listdata.add((void*)data1);
   listdata.add((void*)data2);

   //データを取り出します。
   long d1 = (long)listdata[0];
   long d2 = (long)listdata[1];

   //指定した位置のデータを置き換えます。
   long data3 = 300;
   long data4 = 400;
   listdata.setData(0,(void*)data3);
   listdata.setData(1,(void*)data4);

   //getData でデータの取り出しを行うと、次のようになります。
   long d1 = (long)listdata.getData(0);
   long d2 = (long)listdata.getData(1);

   //データの数を取得するには、次のようにします。
   long num = listdata.getNum();



   //指定したデータを消すには、次のようにします。
   listdata.del((void*)400);

   //指定した位置のデータを消すには、次のようにします。
   listdata.delPos(0);

   //データ一括でを消すには、次のようにします。
   listdata.clear();




WSClistData 関数の説明

書式
WSClistData(long segment_size)
機能
リストデータ構造体のコンストラクタです。 セグメントサイズを指定して、リストデータのインスタンスを 一つ作成します。 セグメントサイズは、リスト構造体の内部で利用される領域を 拡張する単位です。一度にたくさんのデータを保持する場合、 データの出し入れが多い場合には、セグメントサイズを大きく すると、パフォーマンスが良くなります。 デフォルトは、16 です。
処理
引数
(in)long segment_size セグメントサイズ

返値
リストデータのインスタンスへのポインタ
注意
セグメントサイズにマイナスの値、0、256 以上を指定すると、 256 として扱われます。
サンプル
   //データバッファサイズ64 としてリストを作成します。
   //64サイズ単位にリストが拡張されます。
   WSClistData  indexdata(64);



add 関数の説明

書式
long add(void* data,long pos = -1)
機能
リストデータにデータを一つ追加します。
処理
データの挿入位置 (pos) を指定しない場合、 または、-1 を指定した場合は、データの末尾に追加されます。 また、位置を指定した場合には、その位置にデータが挿入され、 それ以降のデータは、一つ後ろにずらされます。 先頭に追加する場合は、0を指定します。
引数
(in)void* data 追加したいデータ
(in)long pos 挿入位置(指定しない場合は、末尾)

返値
WS_NO_ERR= 正常、それ以外はエラー。
注意
指定した位置が、保持しているデータ個数よりも大きい場合は、 リストの末尾に追加されます。
サンプル
WSClistData() を参照してください。



setData 関数の説明

書式
void setData(long pos,void* data)
機能
指定した位置のデータを置き換えます。
処理
引数
(in)long pos 入れ換えたいデータの位置(先頭は0)
(in)void* data データ

返値
なし。
注意
指定した位置にデータが無い場合は、無視されます。
サンプル
WSClistData() を参照してください。



getData 関数の説明

書式
void* getData(long pos)
機能
指定した位置のデータを取得します。
処理
引数
(in)long pos データの位置(先頭は0)

返値
保持しているデータ
注意
指定した位置にデータが存在しない場合、NULL が返されます。
サンプル
WSClistData() を参照してください。



getNum 関数の説明

書式
long getNum()
機能
リストデータが保持するデータの個数を返します。
処理
引数
なし。
返値
保持しているデータの個数
注意
サンプル
WSClistData() を参照してください。



getBuf 関数の説明

書式
void** getBuf()
機能
リストデータが保持するデータを保持するデータ領域を返します。
処理
引数
なし。
返値
データ領域
注意
返された領域を開放してはいけません。
サンプル
WSClistData() を参照してください。
   WSClistData  listdata;
   long data1 = 100;
   long data2 = 200;
   long data3 = 300;

   //データを記憶させます。
   listdata.add((void*)data1);
   listdata.add((void*)data2);
   listdata.add((void*)data3);

   //内部のバッファを取得します。
   void** ptr =  listdata.getBuf();

   //バッファからデータを取り出してみます。
   long d1 = *(long*)(ptr[0]); //data1 の 100
   long d2 = *(long*)(ptr[1]); //data2 の 200
   long d3 = *(long*)(ptr[2]); //data3 の 300




del 関数の説明

書式
long del(void*)
機能
指定したデータをリストから削除します。
処理
引数
(in)void* data 削除したいデータ

返値
削除成功の場合は0、存在しない場合は−1。
注意
複数存在する場合は、先頭に近いものから順に削除されて いきます。
サンプル
   WSClistData  listdata;
   long data1 = 100;
   long data2 = 200;
   long data3 = 300;

   //データを記憶させます。
   listdata.add((void*)data1);
   listdata.add((void*)data2);
   listdata.add((void*)data3);

   //指定したデータを消すには、次のようにします。
   listdata.del((void*)200);

   //指定したデータを消すには、次のようにします。
   listdata.delPos(1);

   //データ一括でを消すには、次のようにします。
   listdata.clear();



delPos 関数の説明

書式
long delPos(long pos)
機能
指定した位置のデータをリストから削除します。
処理
位置に -1 を指定すると、末尾のデータを削除します。
引数
(in)long pos 削除したいデータの位置(先頭は0)

返値
削除成功の場合は0、存在しない場合は−1。
注意
サンプル
del() を参照してください。



clear 関数の説明

書式
void clear()
機能
保持しているデータをリセットし、データを持たない状態に 初期化します。
処理
データ個数は0となります。
引数
なし。
返値
なし。
注意
サンプル
del() を参照してください。



= オペレータの説明

書式
WSClistData & operator = (WSClistData &)
機能
リストデータをコピーします。
処理
引数
(in)WSClistData & src コピーしたいリストデータ

返値
注意
サンプル
   WSClistData  listdata;
   long data1 = 100;
   long data2 = 200;
   long data3 = 300;

   //リストをコピーするには、次のようにします。
   WSClistData  listdata2;
   listdata2 = listdata;



[]オペレータの説明

書式
void* & operator[](long pos)
機能
リストデータを配列の様に扱えるようにします。
処理
引数
(in)long pos データの位置(先頭は0)

返値
データ
注意
次の様に使用します。
サンプル
WSClistData() を参照してください。



getTopData 関数の説明

書式
void getTopData()
機能
リストの先頭のデータを返します。
処理
getData(0) と同じです。
引数
なし。
返値
先頭のデータ
注意
データが存在しない場合、NULL が返されます。
サンプル
   WSClistData  listdata;
   long data1 = 100;
   long data2 = 200;
   long data3 = 300;

   //リストの先頭のデータを取得するには、次のようにします。
   long tval = (void*)listdata.getTopData();



getBottomData 関数の説明

書式
void getBottomData()
機能
リストの最後尾のデータを返します。
処理
getData(-1) と同じです。
引数
なし。
返値
最後尾のデータ
注意
データが存在しない場合、NULL が返されます。
サンプル
   WSClistData  listdata;
   long data1 = 100;
   long data2 = 200;
   long data3 = 300;

   //リストの末尾のデータを取得するには、次のようにします。
   long bval = (void*)listdata.getBottomData();


Document Release 3.00

For Use with Wide Studio Release 3.00, Summer 2002


Wide Stuido Home | Up to

Copyright(C) T. Hirabayashi, 1999-2002 Last modified: June 10, 2002