我有一個對象的基類,我有幾個派生類稱爲項目,人員和位置。重複定義錯誤與多個派生類在主
因爲每個這些都是從對象派生的,所以我需要在每個頭文件中包含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