0

クラス コンストラクターは IDL でどのように定義されますか?

4

2 に答える 2

7

あなたはそうしない。IDL はインターフェイスに関するものであり、オブジェクトの構築方法ではありません。クライアントはそれらの詳細を知る必要はなく、そのようなオブジェクトがネットワーク上で利用可能になったときにそれを操作する方法だけを知っている必要があります。

于 2011-06-13T09:57:56.167 に答える
2

コンストラクターは、オブジェクトの作成と初期化に使用されます。ただし、コンストラクターはオブジェクトをローカルに、つまりコンストラクターを呼び出すプロセスのアドレス空間内に作成します。このため、コンストラクターを使用して別のプロセスでオブジェクトを作成することはできません。これが、IDL インターフェイスのコンストラクターを定義できない理由です。

別の (サーバー) プロセスでオブジェクトを作成する場合は、サーバー内の既存のオブジェクトに対する操作を呼び出すファクトリ パターンを使用できます。例えば、

interface ObjectFactory {
  Object create(...);
  ...
};
于 2011-06-13T10:09:03.177 に答える