我正在写一个简单的游戏引擎,和我有EntityComponent.h文件:找不到符号链接库
#ifndef Psycho2D_Core_EntityComponent_
#define Psycho2D_Core_EntityComponent_
#include <string>
namespace psycho2d{
class EntityComponent{
private:
std::string m_name;
public:
EntityComponent(const std::string &name);
virtual ~EntityComponent();
const std::string& getName() const;
virtual void initialize() = 0;
virtual void loadProperties() = 0;
virtual void update() = 0;
virtual void destroy() = 0;
};
}
#endif
,相对EntityComponent.cpp文件:
#include "EntityComponent.h"
#include <string>
psycho2d::EntityComponent::EntityComponent(const std::string &name){
this->m_name = name;
}
psycho2d::EntityComponent::~EntityComponent(){}
inline const std::string& psycho2d::EntityComponent::getName() const{
return this->m_name;
}
这些两个文件是框架的一部分(我在Mac上工作)。他们编译得很好。 问题是当我编写使用库的可执行文件时。 我已经创建了一个EntityComponent的子类,并编译。但是,如果我调用getName()函数,链接器告诉我:
"psycho2d::EntityComponent::getName() const", referenced from:
_main in main.o
Symbol(s) not found
Collect2: ld returned 1 exit status
我能做什么? 谢谢。
你是否实现了所有的抽象虚拟方法您在界面中指定? – 2010-12-08 19:05:42
如果包含编译/链接命令,可能会有所帮助。 – 2010-12-08 19:06:14