Насколько я понимаю, защитники заголовка используются, чтобы избежать случайного включения нескольких раз. Однако, когда я включаю класс несколько раз, я все еще получаю ошибку переопределения. Не должны ли охранники заголовков позаботиться об этом? //animal.hОшибка определения переопределения типа класса с защитой заголовка C++
#ifndef ANIMAL_H
#define AMIMAL_H
class Animal {};
#endif
//main.cpp
#include"animal.h"
#include"animal.h"
C2011 Ошибка: 'Animal': тип 'класс' переопределение
Активный «сгенерировать предварительно обработанный файл», чтобы увидеть фактический вывод препроцессора. – harper