C++相談室 part40
■ このスレッドは過去ログ倉庫に格納されています
0445デフォルトの名無しさん
2005/05/22(日) 01:44:06やっても大丈夫なのかな・・・。
あるいは言語仕様的には OK でもちゃんとコンパイルできない処理系があるとか・・・。
とりあえず g++ ではうまくいったわけだが。
---以下サンプルコード---
#include <iostream>
struct Giko {
virtual void gorua() { std::cout << "ゴルア" << std::endl; }
};
struct Hoge {
Giko* createGiko() {
struct FusaGoko : public Giko {
virtual void gorua() { std::cout << "フサフサ" << std::endl; }
};
return new FusaGoko();
}
};
int main() {
Giko* giko = Hoge().createGiko();
giko->gorua();
delete giko;
return 0;
}
■ このスレッドは過去ログ倉庫に格納されています