Следует ли использовать относительные пути включения для моего проекта или поместить каталог include в путь включения?

В моем проекте я сейчас использую относительные пути для включения моих файлов, которые, по общему признанию, не часто меняются. Однако это дает довольно странные шаблоны включения, потому что я обычно вкладываю свои файлы во множество папок.

Например, в моем текущем проекте у меня есть network / server / myfile.hpp . Он должен включать common / log.hpp . В настоящее время я использую #include "../../common/log.hpp", что довольно многословно, но работает.

Если я вместо этого добавлю свой основной каталог include в путь, я мог бы просто include "common / log.hpp" .

Я знаю, что этот вопрос может быть больше о предпочтениях, чем о чем-либо другом, но есть ли какие-либо объективные плюсы и минусы в отношении кроссплатформенных приложений и как насчет соглашений C ++?

15
задан Max 15 February 2011 в 16:55
поделиться