Что такое .h.gch файл?

У меня недавно был проект класса, где я должен был сделать программу с G ++.

Я использовал make-файл, и по некоторым причинам он иногда оставлял .h.gch файл.

Иногда, это не влияло на компиляцию, но время от времени она приведет к компилятору, выпуская ошибку для проблемы, которая была устранена или которая не имела смысла.

У меня есть два вопроса:

1) Что такое .h.gch файл и для чего каждый используется? и

2) Почему это вызвало бы такие проблемы, когда это не было очищено?

105
задан Aaron Hall 21 September 2019 в 20:02
поделиться

3 ответа

A ] .gch файл представляет собой предварительно скомпилированный заголовок.

Если .gch не найден, то будут использоваться обычные заголовочные файлы.

Однако если ваш проект настроен на создание предварительно скомпилированных заголовков, он создаст их, если они не существуют, и использует их в следующей сборке.

Иногда *. H.gch может быть поврежден или содержать устаревшую информацию, поэтому удаление этого файла и его повторная компиляция должны исправить это.

104
ответ дан 24 November 2019 в 04:00
поделиться

a) Это предварительно скомпилированные заголовки: http://gcc.gnu.org/onlinedocs/gcc/Precompiled-Headers.html

б) Они содержат "кэшированную" информацию из файлов .h и должны обновляться каждый раз, когда вы меняете соответствующий файл .h. Если этого не произошло - в вашем проекте установлены неверные зависимости

15
ответ дан 24 November 2019 в 04:00
поделиться

Это предварительно скомпилированный заголовок GCC.

В Википедии есть наполовину приличное объяснение, http://en.wikipedia.org/wiki/Precompiled_header

20
ответ дан 24 November 2019 в 04:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: