所以这是我的问题,我想要一个特定类的对象向量,然后我可以将其传递给其他类以供使用。
我希望 Vector 在该类的构造函数中添加该类的实例。因此,我在类成员和构造函数中设置了一个静态向量,如果有任何意义,我想尝试 push_back(this)。
目前有 2 个类在工作,一个是事件处理程序类,它在每次左键单击时创建一个“障碍”类(我想要一个向量的类)的实例。
(我省略了不相关的代码)
class MyEventReceiver: public IEventReceiver
{
private:
blah blah
public:
blah blah
virtual bool OnEvent (const SEvent& event){
if(left click)
Obstacle obs(scn,randX,randY,randR);
}
}
障碍.h:
class Obstacle
{
private:
static std::vector<Obstacle> *obs;
public:
Obstacle(scene::ISceneManager*, float, float, float);
~Obstacle();
};
障碍cpp:
std::vector<Obstacle> *Obstacle::obs;
Obstacle::Obstacle(scene::ISceneManager* scn, float x, float y, float radius)
{
//get and set the passed in params blah blah
obs->push_back(this);
}
这不起作用,但希望你能看到我想要实现的目标。稍后我想要一个函数,它将返回对 obs 的引用,以便其他类可以调用此函数并访问向量以操作和读取它。