baseclass
のオブジェクトまたはderivedclass
(の派生クラス)のオブジェクトを返す factorymethod があります baseclass
。派生クラスには、virtual void foo(int x)
引数を 1 つ取るメソッドがあります。baseclass
ただしvirtual void foo()
、引数なしで持っています。
私のコードでは、ファクトリ メソッドは、 class のオブジェクトを明確に指す bar 型のポインターを返しますderivedclass
。ただし、これは実行時にのみ認識されるfoo()
ため、引数を取らないというコンパイラ エラーが発生します。このポインターを型のポインターにキャストできますderivedclass
か?
std::auto_ptr<baseclass> bar = classfactory::CreateBar(); //returns object of class derivedclass
bar->foo(5);
class baseclass
{
public:
virtual void foo();
}
class derivedclass : public baseclass
{
public:
virtual void foo(int x);
}