我有一个对象的基类,我有几个派生类称为项目,人员和位置。重复定义错误与多个派生类在主
因为每个这些都是从对象派生的,所以我需要在每个头文件中包含Object.h,并且在我的main中包含所有的派生类。
因为我这样做,我得到一个重新定义错误。
我想知道的是,包含这些文件以避免此错误的正确方法是什么?
谢谢!
编辑:
object.h
using namespace std;
class Object{
string name;
string description;
public:
Object();
Object(string name, string description);
void set_name(string name);
void set_description(string description);
string get_name();
string get_description();
~Object();
};
item.h
using namespace std;
#include "object.h"
class Item : public Object{
public:
Item();
Item(string name, string description);
};
locale.h文件
using namespace std;
#include "object.h"
class Locale : public Object{
public:
Locale();
Locale(string name, string description);
};
的main.cpp
#include <iostream>
#include <string>
#include "locale.h"
#include "item.h"
using namespace std;
int main(){
return 0;
}
什么是*确切*错误信息?并且请显示您的代码的(简化)版本。 – 2012-02-26 21:04:06
确切的错误信息是“重新定义对象” – jasonaburton 2012-02-26 21:05:00
好的,你需要显示一些代码。首先查看http://sscce.org(这是关于将您的代码降低到Stack Overflow的最佳格式)。 – 2012-02-26 21:06:30