Я пытаюсь решить эту проблему, потому что я не могу найти хороший ресурс в Интернете, который делает это.
Я не до конца понимаю проблему, потому что мне так и не удалось ее решить, поэтому я попытаюсь описатьэто как можно лучше.
Некоторое время назад у меня возникла проблема, когда заголовки игнорировались, потому что «они были вызваны уже один раз, и поэтому, когда они вызывались снова из другого документа, это игнорировалось, и поэтому была ошибкабудучи брошенным "
Я никогда полностью не понимал этого, потому что вы можете вызывать заголовок более одного раза без ошибок
header1.h
#ifndef _FCLASS_
#define _FCLASS_
class firstClass {
...//declaration
}
#endif
header2.h
#ifndef _SCLASS_
#define _SCLASS_
#include "header1.h"
class SecondClass:firstClass{
...//declaration
}
#endif
header3.h
#ifndef _TCLASS_
#define _TCLASS_
#include "header1.h"
class thirdClass:firstClass{
...//declaration
}
#endif
В приведенном выше примере класс header1 вызывался дважды, и не должно возникать никаких ошибок.Хотя header1 был объявлен один раз, он может использоваться несколькими заголовками.
Поэтому мой вопрос в том, в каких случаях заголовок может фактически игнорироваться документом, если он уже был объявлен один раз.
Относится ли этот тип проблемы только к файлам .cpp, которые содержат заголовки ??