私はこのような構造を持っています
struct structure
{
BaseObject &A; //BaseObject has a function declared as virtual
};
実行時に、オブジェクトを &A に動的に割り当てます。
structure *s = new structure;
DerivedObjectB *B = new DerivedObjectB(); //Derived class overloads the virtual function
s->A = *B; //s is a pointer of the structure. S has been initialized
このコードをコンパイルできますが、実行時に seg-fault エラーが発生します。ポインターを使用できないという制限があります。これは宿題ではありません。私がリバース コンパイラとして使用しているコンパイラには、SSA のビルドに問題があるため、ポインタの使用に制限があります。