2

所以我有这个奇怪的问题——我在 C++ 中使用 sfml,我想编辑一个游戏屏幕(我创建了一个屏幕类,由游戏的不同级别和屏幕派生)但奇怪的是当我改变东西时类(例如,如果我试图改变精灵的像素移动率),然后我编译并运行程序,我看到绝对没有任何变化,但是如果我之后更改另一个类(哪个类,任何类都无关紧要会工作)而不是看到我创建的游戏屏幕的变化......我真的不知道这里有什么问题所以我寻求你的帮助

顺便说一句,如果它的问题有类(没有标题,只有 .cpp )

#include "Screen.hpp"
#include "Sprite.hpp"
#include <iostream>

using namespace sf;

class GameScreen : public rce::Screen
{
private:
    rce::Sprite s;

public:
    GameScreen() : Screen()
    {
    }

    void Load()
    {
        s.SetImage("circle.png");
    }

    void Unload()
    {
    }

    void Update()
    {
        s.SetX(s.GetX()+1);
    }

    void Draw()
    {
        s.Draw();
    }
};
4

1 回答 1

1

如果您使用 C/C++ 处理多个文件,C/C++ 的编译器会编译每个 *.c 或 *cpp 文件并使其成为 *.o 或 *obj 文件,在某些 compilers.gcc 中使用 *.o 。然后链接器将它们链接在一起。当你重新编译一个特殊文件时,你应该编译它的依赖。

于 2012-07-28T20:25:47.120 回答