仅在编辑另一个类后编译更改

时间:2012-06-16 21:31:49

标签: c++ sfml

所以我有这个奇怪的问题 - 即时通讯使用sfml与c ++,我想编辑一个游戏画面(我创建了一个屏幕类,由游戏的不同级别和屏幕派生)但奇怪的是,当我改变类中的东西时(例如,如果我试图改变精灵的像素移动速度)并且比我编译并运行程序我绝对没有看到任何变化,但如果我事后改变另一个类(不重要哪个类,任何类都可以工作)比生病看到我创建的游戏画面的变化...... 我真的不知道这里的问题是什么,所以我要求你的帮助

顺便说一句,如果重要的是那个类(没有标题,只有.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();
    }
};

1 个答案:

答案 0 :(得分:1)

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