Это довольно простой вопрос, но это тот, который несколько время меня беспокоил.
В моем проекте есть куча файлов .cpp(Реализация) и .hpp(Определение).
Я нахожу, что по мере добавления дополнительных классов и более взаимосвязей между классами я должен # включать другие файлы заголовков. Через неделю или две я получаю директивы #include во многих местах. Позже я попытаюсь удалить некоторые из #includes и обнаружу, что все по-прежнему работает, потому что некоторые другие включенные классы также включают # то, что я только что удалил.
Есть ли простое, простое правило для ввода #includes, которое остановит этот уродливый беспорядок в первую очередь? Какова наилучшая практика?
Например, я работал над проектами, в которых файл .cpp для реализации ТОЛЬКО содержит соответствующий файл .hpp определения и ничего больше. Если есть какие-либо другие .hpp файлы, которые должны использоваться в реализации .cpp, все они ссылаются на файл .hpp определения.