Это несколько вопросов для одной и той же инструкции предварительной обработки.
1 - < > или ""?
Помимо информации, найденной в MSDN:
1.a: Каковы различия между двумя обозначениями?
1.b: Все ли компиляторы реализуют их одинаково?
1.c: Когда вы будете использовать < > , и когда вы будете использовать "" (то есть, каковы критерии, которые вы использовали бы для использования одного или другого для заголовка)?
2 - #include {TheProject/TheHeader.hpp} или {TheHeader.hpp}?
Я видел, как минимум два способа записи включают в себя один заголовок проекта. Учитывая, что у вас есть как минимум 4 типа заголовков, то есть:
- частные заголовки вашего проекта?
- заголовки вашего проекта, но которые экспортируют символы (и, следовательно, "общедоступные" ).
- заголовки другого проекта, который ваш модуль связывает с
- заголовки компилятора или стандартной библиотеки
Для каждого типа заголовков:
2.a: Вы использовали бы < > или ""?
2.b: Вы включили бы с помощью {TheProject/TheHeader.hpp} или с помощью {TheHeader.hpp}?
3 - Бонус
3.a: Вы работаете над проектом с источниками и/или заголовками в древовидной организации (т.е. каталоги внутри каталогов, в отличие от "каждого файла в одном каталоге" ) и каковы плюсы/минусы?