std::stacktrace_entry::source_file
std::string source_file() const; | (начиная с C++23) |
Возвращает предполагаемое или фактическое имя исходного файла, лексически содержащего выражение или оператор, вычисление которого представлено объектом *this, либо пустую строку в случае ошибки, отличной от ошибки выделения памяти, например, когда *this пуст.
Либо source_file возвращает предполагаемое имя исходного файла, а source_line возвращает предполагаемый номер строки, либо source_file возвращает фактическое имя исходного файла, а source_line возвращает фактический номер строки.
Параметры
(нет)
Возвращаемое значение
Указанное выше имя исходного файла в случае успеха; пустая строка в случае ошибки, отличной от ошибки выделения памяти.
Исключения
Выбрасывает std::bad_alloc, если не удаётся выделить память для внутренних структур данных или результирующей строки.
Примечания
Предполагаемое имя исходного файла — это имя, в которое раскрывается предопределённый макрос __FILE__; оно может быть изменено директивой #line.
Поддержка пользовательских распределителей для этой функции не предусмотрена, поскольку реализации обычно требуют платформенно-зависимого выделения памяти, системных вызовов и большого объёма ресурсоёмких вычислений, а пользовательский распределитель не даёт преимуществ для этой функции: платформенно-зависимые операции занимают на порядок больше времени, чем выделение памяти.
Пример
См. также
| возвращает имя файла, представленного этим объектом (открытая функция-член std::source_location) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/utility/stacktrace_entry/source_file