Interstage Application Server アプリケーション作成ガイド (CORBAサービス編) |
目次
索引
![]() ![]() |
第5章 アプリケーションの開発(C++言語) |
CORBAでは、クライアント上の可変長データを以下のように扱います。
上記解放処理がユーザミスにより行われなかった場合、解放漏れとなって無駄な資源がメモリ中に残ることになります。
CORBAでは、上記解放処理の簡易化のため、varクラスが提供されています。varクラスは、CORBAの可変長データを自動変数化して扱うための機能を提供します。varクラスで提供している主な機能は以下のとおりです。
varクラスは、以下の4とおりあります。
varクラスの使用イメージを以下に示します。
func() { SampleStruct *data = new SampleStruct; ... // dataに値を設定。 SampleStruct_var var_data var_data = data; // dataのポインタをvar_dataに格納。 ... var_data->para1 = 3; // var_dataに格納されているポインタを取り出し、 // 構造体の要素para1のデータを書き換えます。 ... } // 関数終了時に自動変数var_dataが解放されます。その際、デストラクタが起動され、 // newで獲得したSampleStructの領域も同時に解放されます。
目次
索引
![]() ![]() |