Spec-Zone.ru › C++

std::stacktrace_entry::source_file

std::string source_file() const;
(since C++23)

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

Либо source_file возвращает предполагаемое имя файла исходного кода, а source_line возвращает предполагаемый номер строки, либо source_file возвращает фактическое имя файла исходного кода, а source_line возвращает фактический номер строки.

Параметры

(нет)

Значение возврата

Имя файла исходного кода, указанного выше, при успехе, пустая строка при ошибке, отличной от ошибки выделения памяти.

Исключения

Выбрасывает std::bad_alloc если не удаётся выделить память для внутренних структур данных или результирующей строки.

Примечания

Предполагаемое имя файла исходного кода — это то, к чему расширяется предопределённая макрокоманда __FILE__, и может быть изменено директивой #line.

Поддержка пользовательских аллокаторов для этой функции не предоставляется, поскольку реализации обычно требуют платформозависимых выделений, системных вызовов и большого объёма работы ЦП, а пользовательский аллокатор не даёт преимуществ для этой функции, так как платформозависимые операции занимают на порядок больше времени, чем выделение памяти.

Пример

См. также

file_name
возвращает имя файла, представленное этим объектом
(публичный член-функция std::source_location)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/utility/stacktrace_entry/source_file

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API