1

当我尝试通过这一行时,我的程序崩溃了:

Character::Character(sf::Vector2f &position, sf::RenderWindow* _pWin, World* _pWorld) 
: MobileObject(_pWin, _pWorld), moving(false)  **<-----**
{ 
    world_pos = position; 
    UpdateParent();
    txCharacter.loadFromFile("images/asdf.png"); //tmp
};

移动对象如下:

class MobileObject : public Object {
public: 

    virtual void Draw()=0; 
    virtual void Update()=0; 

    MobileObject(sf::RenderWindow* _pWin, World* _pWorld) 
    : Object(_pWin), pWorld(_pWorld) { 

        world_pos.x=0;
        world_pos.y=0;
        UpdateParent();

    }; 

对象如下:

class Object {
public:
    Object(sf::RenderWindow* _pWin) : pWin(_pWin) { };

    virtual void Draw()=0; 
    virtual void Update()=0;

    sf::Vector2f world_pos;
    float z;

    sf::RenderWindow* pWin;
};

崩溃是:
Unhandled exception at ... in ...: 0xC0000005: Access violation reading location 0xffffffffffffffff.

为什么会这样?

4

0 回答 0