最終更新日時(UTC): 2026年02月26日 04時20分38秒
Akira Takahashi が更新

履歴 編集

function
<stacktrace>

# std::basic_stacktrace::operator[](C++23)

    const_reference operator[](size_type frame_no) const; // (1) C++23

## 概要

任意の位置の要素を取得する。

## 堅牢化された事前条件

- `frame_no < size()`であること

## 戻り値

保持しているスタックトレースの履歴の、`frame_no`番目の要素を返す。

## 例外

投げない

## 例

    #include <iostream>
    #include <stacktrace>

    void g() {
      std::stacktrace st = std::stacktrace::current();
      std::cout << st[0] << std::endl;
    }

    void f() {
      g();
    }

    int main() {
      f();
    }

### 出力例 (GCC)

     g() at /app/example.cpp:5

## バージョン

### 言語

- C++23

### 処理系

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

## 参照

- P3697R1 Minor additions to C++26 standard library hardening
- P3878R1 Standard library hardening should not use the 'observe' semantic