У меня есть базовый класс 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;
}