class A
{
public:
static A* create()
{
return new A;
}
};
// B-Yまで省略
class Z :public Y
{

};
int _tmain(int argc, _TCHAR* argv[])
{
A*a = Z::create(); //ここでZのオブジェクトを返す様にしたい
return 0;
}
テンプレートとか実行時型情報か何かを使えば
createをオーバーライドせずにZのオブジェクトを返すようなことはですか?