Как получить путь к файлу, который вызывает данную функцию
Мне нужно сделать так, чтобы я мог получить путь к файлу который вызывает функцию и эта функция могла работать с данным путем (желательно это сделать максимально автоматизированным, то есть чтобы не надо было вводить что-либо в аргументы функции)
Например: есть стандартный файл main.cpp и файлы test.h и test.cpp(например)
test.h:
#pragma once
class Test{
public:
static void getPath();
};
test.cpp:
#include "test.h"
void Test::getPath(){
// Как-то получить путь к файлу, в данном случае путь к main.cpp (так как вызывает эту функцию он)
// Какие-то действия с этим путем
}
main.cpp:
#include "test.h"
int main(){
Test::getPath();
return 0;
}
Извиняюсь за возможные ошибки в коде (я набирал его на телефоне и здесь)
C++17, компилятор я не помню, но IDE - Visual Studio 22
Источник: Stack Overflow на русском