このクラスは,IDL指定型を保持し,タイプセーフ方式で引き渡せるようにするために使用します。
このクラスのオブジェクトは,含まれているオブジェクトの型を定義するTypeCodeのポインタと,その含まれたオブジェクトのポインタを持ちます。オブジェクトの値と型を初期化し照会するメソッドだけでなく,オブジェクトの構築,コピー,および解放を行うメソッドも提供されます。さらに,オブジェクトをストリームに書き込んだり,ストリームから読み取ったりするストリームメソッドも提供されます。コードサンプル17-14に定義例を示します。
class Any {
public:
. . .
CORBA_TypeCode_ptr type();
void type(CORBA_TypeCode_ptr tc);
const void *value() const;
static CORBA::Any_ptr _nil();
static CORBA::Any_ptr _duplicate(CORBA::Any *ptr);
static void _release(CORBA::Any *ptr);
. . .
}
このクラスのオブジェクトは,含まれているオブジェクトの型を定義するTypeCodeのリファレンスと,その含まれたオブジェクトのリファレンスを持ちます。オブジェクトの値と型を初期化し照会するメソッドだけでなく,オブジェクトの構築,コピー,および解放を行うメソッドも提供されます。さらに,オブジェクトをストリームに書き込んだり,ストリームから読み取ったりするストリームメソッドも提供されます。コードサンプル17-15に定義例を示します。
package org.omg.CORBA;
public abstract class Any {
public abstract TypeCode type();
public abstract void type(TypeCode type);
public abstract void read_value(InputStream input,
TypeCode type);
public abstract void write_value(OutputStream output);
public abstract boolean equal(Any rhs);
. . .
}