#include <iostream>
class EquationOfMotion
{
public:
// other attributes
virtual void findNextTimeStep() = 0;
};
class SystemModel
{
public:
EquationOfMotion* p_eom;
// other atributes
SystemModel(EquationOfMotion* new_p_eom)
{
p_eom = new_p_eom;
}
};
class VehicleEquationOfMotion: public EquationOfMotion
{
public:
VehicleEquationOfMotion(...){/* initialise attribute*/}
virtual void findNextTimeStep(){}
};
class Vehicle: public SystemModel
{
// ???? Implementation ?????
}
Vehicle是SystemModelwherep_eom指向 的特化VehicleEquationOfMotion。
我想初始化一个实例VehicleEquationOfMotion并指向它p_eom。Vehicle我希望它只在 的范围内定义Vehicle,同时不使用堆。甚至可以在不使用堆的情况下将VehicleEquationOfMotion对象驻留在里面吗?Vehicle(如果不是,请提出设计错误的地方)。
可能会有所帮助:我考虑过这个问题中的实现,但遇到了麻烦(见问题)。