- stacktrace[meta header]
- std[meta namespace]
- basic_stacktrace[meta class]
- function[meta id-type]
- cpp23[meta cpp]
[[nodiscard]] bool empty() const noexcept; // (1) C++23
bool empty() const noexcept; // (1) C++26
スタックトレースの履歴数が空かどうかを判定する。
保持しているスタックトレースの履歴が空であればtrue
、そうでなければfalse
を返す。
#include <cassert>
#include <stacktrace>
void g() {
auto trace = std::stacktrace::current(0, 0);
assert(trace.empty());
}
void f() {
g();
}
int main() {
f();
std::stacktrace trace{};
assert(trace.empty());
}
- trace.empty()[color ff0000]
- current[link current.md]
- C++23
- Clang: ??
- GCC: 12 [mark verified]
- Visual C++: ??
- P2422R1 Remove
nodiscard
annotations from the standard library specification- C++26で
[[nodiscard]]
指定が削除された
- C++26で