В моем проекте я сейчас использую относительные пути для включения моих файлов, которые, по общему признанию, не часто меняются. Однако это дает довольно странные шаблоны включения, потому что я обычно вкладываю свои файлы во множество папок.
Например, в моем текущем проекте у меня есть network / server / myfile.hpp
. Он должен включать common / log.hpp
. В настоящее время я использую #include "../../common/log.hpp"
, что довольно многословно, но работает.
Если я вместо этого добавлю свой основной каталог include в путь, я мог бы просто include "common / log.hpp"
.
Я знаю, что этот вопрос может быть больше о предпочтениях, чем о чем-либо другом, но есть ли какие-либо объективные плюсы и минусы в отношении кроссплатформенных приложений и как насчет соглашений C ++?