-
- Вообще-то h-файл это макроподстановка (дословно) в текст модуля,
который импортирует объекты. Компилировать h-файл нет ни малейшего
смысла. Он ЛИНКЕРУ не нужен. С рекурсией лучше бороться путем
применения собственной головы и просто ее не создавать. Cкpипaч(96 знак., 28.05.2024 16:54)
- это правило хорошего тона. .h файл должен быть самодостаточным. Это
нужно чтобы если кто-то решил подключить ваш файл к себе в проект к
своему модулю ему не нужно было бы искать и подключать до этого .h
файла другие .h файлы чтобы его модуль скомпилировался без ошибок.
Поэтому все типы используемые в создаваемом .h файле должны быть
описаны в подключенных к нему .h -файлах. А чтобы быть уверенным,
что все подключил и не наподключал чего лишнего вот тут компиляция
и abivan(196 знак., 28.05.2024 17:37)
- Блин. То что мне кажется само собой разумеющимся, оказывается не более чем "правило хорошего тона" :) - Cкpипaч(28.05.2024 17:50)
- это правило хорошего тона. .h файл должен быть самодостаточным. Это
нужно чтобы если кто-то решил подключить ваш файл к себе в проект к
своему модулю ему не нужно было бы искать и подключать до этого .h
файла другие .h файлы чтобы его модуль скомпилировался без ошибок.
Поэтому все типы используемые в создаваемом .h файле должны быть
описаны в подключенных к нему .h -файлах. А чтобы быть уверенным,
что все подключил и не наподключал чего лишнего вот тут компиляция
и abivan(196 знак., 28.05.2024 17:37)
- Современные компиляторы все понимают #pragma once - VladislavS.(28.05.2024 12:14)
- тут не проблема в повторном подключении, ее не будет в первом случае точно, а постановка гарда в конце позволит выявить логические ошибки при создании(написании) .h файлов, когда оба файла включают друг друга. Труда поставить гард в конце никакого, а польза может быть. Более красивыми словами про это писал fk0. - abivan(28.05.2024 12:36)
- Вообще-то h-файл это макроподстановка (дословно) в текст модуля,
который импортирует объекты. Компилировать h-файл нет ни малейшего
смысла. Он ЛИНКЕРУ не нужен. С рекурсией лучше бороться путем
применения собственной головы и просто ее не создавать. Cкpипaч(96 знак., 28.05.2024 16:54)