13.1.19 PortableServer関数
POAに登録されたオブジェクトは、オブジェクト識別子としてオクテット、特にPortableServer::POA::ObjectId型のシーケンスを使用します。ただし、C++のプログラマはオブジェクト識別子として文字列を使用することが多いため、C++マッピングでは、文字列のObjectIdへの変換、またはその逆の変換を行ういくつかの変換関数が用意されています。
/ C++
namespace PortableServer
{
char* ObjectId_to_string(const ObjectId&);
ObjectId* string_to_ObjectId(const char*);
}これらの関数は、パラメータ渡しおよびメモリー管理について、標準のC++マッピングの規則に準拠します。
ObjectIdを文字列に変換したときに、文字列に正しくない文字(NULLなど)が生成された場合は、最初の2つの関数によってCORBA::BAD_PARAM例外がスローされます。
親トピック: マッピング