>>565
すまん、こうでなくてはならなかった:
使う側:
class CBase {
public:
 static CBase *CreateObject();
 (メソッド群)
};
実装側:
class CDerived : public Base {
public:
 (データメンバ群)
};
CBase *CBase::CreateObject() {
 return new CDerived;
}