Object 基本クラスがあり、Item、Person、および Location と呼ばれるいくつかの派生クラスがあります。
これらはそれぞれ Object から派生しているため、それぞれのヘッダー ファイルに Object.h を含める必要があり、すべての派生クラスをメインに含めます。
私はそうしているので、再定義エラーが発生しています。
私が知りたいのは、このエラーを回避するためにこれらのファイルを含める正しい方法は何ですか?
ありがとう!
編集:
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;
}