Получить директорию файла и объедение путей С++

Пишу свою версию С++. Сейчас пишу свой препроцессор. Возникла проблема с директивой #include. Проблема заключается в следующем: чтобы подключить файл надо указать полный путь до него. Мне такой вариант не подходит.

Я примерно понимаю как реализовать путь относительно другого файла:

1. Надо получить путь к директории в которой находится этот файл.

2. Добавить этот путь к пути файла.

Вопрос заключается в следующем: как в С++ получить путь к директории этого файла (допустим у меня есть путь к файлу C:\Users\matvj\test.cpp, как мне из этого получить C:\Users\matvj?) и как в C++ сделать объедение путей ( Ну чтобы C:\Users\matvj + ..\test.h превращались не в C:\Users\matvj..\test.h, а C:\Users\test.h)?


Ответы (1 шт):

Автор решения: Рома Кармальков

Для этого можно использовать filesystem::path. Объедение путей с помощью / и /=, а получить директорию метод root_directory

→ Ссылка