最終更新日時: 2024年06月11日 22時45分38秒 (JST)
Akira Takahashi が更新

履歴 編集

function
<stacktrace>

# std::stacktrace_entry::source_file(C++23)

    string source_file() const; // (1) C++23

## 概要

ソースファイル名を取得する。

## 戻り値

`*this`で表される評価の式または文を字句的に含むソースファイルの推定または実際の名前、または空文字列を返す。

## 例外

内部のデータ構造、または結果文字列のためのメモリ確保ができない場合、`std::bad_alloc` 例外を送出する。

## 備考

- この関数はメモリ確保以外のエラーを「利用可能な情報がない」ものとして扱い、その場合は例外を送出しない

## 例

    #include <iostream>
    #include <stacktrace>

    void g() {
      std::stacktrace st = std::stacktrace::current();
      std::stacktrace_entry entry = st[0];

      std::cout << entry.source_file() << std::endl;
    }

    void f() {
      g();
    }

    int main() {
      f();
    }

### 出力例 (GCC)

    /app/example.cpp

## バージョン

### 言語

- C++23

### 処理系

- Clang: ??
- GCC: 12 ✅
- Visual C++: ??