13.3.3.1 outクラス

構造化された型(構造体、ユニオン、シーケンス)、配列、およびインタフェースには、対応する_outクラスが生成されます。outクラスは、可変長型および固定長型へのポインタのメモリー管理を容易にするために提供されます。outクラスと共通のメンバー関数の詳細は、「outクラスの使い方」を参照してください。

ユーザー定義のデータ型でサポートされる演算子には、いくつかの違いがあります。次の表では、生成されたC++コードにおける各OMG IDLのデータ型でサポートされる様々な演算子について説明しています。代入演算子は、次の表に示すすべてのデータ型でサポートされるので、比較には含まれていません。

表13-5 ユーザー定義のデータ型のoutクラスでサポートされる演算子の比較

OMG IDLのデータ型 演算子 -> 演算子[]
struct はい いいえ
union はい いいえ
sequence はい はい(constを除く)
array いいえ はい

シグネチャは、次の表に示すとおりです。

表13-6 _outクラスの演算子のシグネチャ

OMG IDLのデータ型 演算子メンバー関数
struct
TYPE * operator-> ()
TYPE * operator-> () const
union
TYPE * operator-> ()
TYPE * operator-> () const
sequence
TYPE * operator-> ()
TYPE * operator-> () const
TYPE & operator[](CORBA::Long index)
array
TYPE_slice & operator[](CORBA::Long index)
TYPE_slice & operator[](CORBA::Long index) const