| 
class ICounterFactory {
/**
    ユーザーで独自にカウンタ(ICounter派生クラス)を用意する場合、
    GetTypeで、1000以上のuniqueな数字を返すようにして、
    このFactory派生クラスで、CreateInstanceをオーバーライドして、
    その数字を受け取ったときに、そのクラスをnewして返すようにして、
    そのFactoryを、ICounter::SetFactoryすれば良い。
    そうすれば、CProxyCounterによる、その新しく作ったカウンタの
    シリアライズが可能となる。
*/
public:
    virtual ICounter* CreateInstance(int n)=0;
    virtual ~ICounterFactory(){}
};
 |