13.1.22 生成される静的メンバー関数

ここでは、インタフェースINTFに対して生成される、_duplicate、_narrow、および_nilの各静的メンバー関数について詳細に説明します。

static INTF_ptr _duplicate (INTF_ptr Obj)
この静的メンバー関数は、既存のINTFオブジェクト参照を複製して、新しいINTFオブジェクト参照を返します。新しいINTFオブジェクト参照は、CORBA::releaseメンバー関数を呼び出して解放する必要があります。エラーが発生した場合、nil INTFオブジェクトへのリファレンスが返されます。引数Objには、複製元のオブジェクト参照を指定します。
static INTF_ptr _narrow (CORBA::Object_ptr Obj)
この静的メンバー関数は、既存のCORBA::Object_ptrオブジェクト参照を引数とし、新しいINTFオブジェクト参照を返します。Object_ptrオブジェクト参照は、CORBA::ORB::string_to_objectメンバー関数を呼び出して作成されているか、または操作からパラメータとして返されています。
INTF _ptrオブジェクト参照は、INTFオブジェクト、またはINTFオブジェクトから継承するオブジェクトと対応している必要があります。新しいINTFオブジェクト参照は、CORBA::release member関数を呼び出して解放する必要があります。引数Objには、INTFオブジェクト参照にナロー変換されるオブジェクト参照を指定します。Objパラメータは、このメンバー関数では変更されません。また、不要になったときは解放してください。ObjINTFオブジェクト参照にナロー変換できない場合は、INTF nilオブジェクト参照が返されます。
static INTF_ptr _nil ( )
この静的メンバー関数は、INTFインタフェースの新しいnilオブジェクト参照を返します。新しいリファレンスは、CORBA::releaseメンバー関数を呼び出して解放する必要はありません