第一:我的英文不太好。打扰一下。C++代码块错误
我正在使用Ubuntu(我不知道这是否重要),并且自从我开始使用它之后,我遇到了Code :: Blocks问题。但我通过重新开放程序来修复它们。但是现在,编译代码时出现了一个非常疯狂的错误。我列入就像平常文件: #include "GameObjectUtility.h"
,我用类“GameObjectUtility”声明一个成员对象,就像这样:
class GameObject
{
std::vector<GameObjectUtility> uts;
// Error here:
// GameObjectUtility was not declared in this scope
}
所以,这是我的错,或者是有什么车与Code :: Blocks? 此外,还有一种方法告诉链接器:首先执行这个文件,然后执行另一个?
谢谢你的回答!
编辑:h和.ccp文件GameObjectUtility:
因此,这是GameObjectUtility.h:
#ifndef GAMEOBJECTUTILITY_H
#define GAMEOBJECTUTILITY_H
#include <string>
#include "Collision.h"
class GameObjectUtility
{
public:
GameObjectUtility();
virtual ~GameObjectUtility();
virtual void Update() = 0;
virtual void LateUpdate() = 0;
virtual void FixedUpdate() = 0;
static void SendMsg(std::string msg);
protected:
private:
virtual void GetMsg(std::string msg) = 0;
};
#endif // GAMEOBJECTUTILITY_H
而且在GameObjectUtility.cpp只是两个构造和析构
如何进行GameObjectUtility的前向声明? – 2015-02-05 16:00:31
你的意思是像'类GameObjectUtility;' ? – user3739684 2015-02-05 16:01:55
你可以从'GameObjectUtility.h'中看到'GameObjectUtility'的样子吗?我怀疑你得到这个错误,因为它的定义可能出现在'GameObjectUtility.cpp'中。 – 2015-02-05 16:02:47