std::basic_stacktrace<Allocator>:: current
|
static
basic_stacktrace current
(
const
allocator_type
&
alloc
=
allocator_type ( ) ) noexcept ; |
(1) | (C++23以降) |
|
static
basic_stacktrace current
(
size_type skip,
const
allocator_type
&
alloc
=
allocator_type ( ) ) noexcept ; |
(2) | (C++23以降) |
|
static
basic_stacktrace current
(
size_type skip, size_type max_depth,
const
allocator_type
&
alloc
=
|
(3) | (C++23以降) |
s
[
i
]
を、現在の実行スレッドにおける現在の評価のスタックトレース内の(
i
+1
)番目のスタックトレースエントリとします(0 ≤
i
<
n
)。ここで
n
はスタックエントリ内のスタックトレースエントリの総数です。
basic_stacktrace
を生成しようと試みます。生成されるスタックトレースは
s
[
0
]
、
s
[
1
]
、...、
s
[
n
-
1
]
で構成されます。
basic_stacktrace
を作成しようと試みる。これは
s
[
m
]
、
s
[
m
+
1
]
、...、
s
[
n
-
1
]
から構成され、ここで
m
は
min(skip,
n
)
である。
basic_stacktrace
を生成しようと試みる。これは
s
[
m
]
、
s
[
m
+
1
]
、...、
s
[
o
-
1
]
から構成される。ここで
m
は
min(skip,
n
)
、
o
は
min(skip + max_depth,
n
)
である。
skip
+
max_depth
<
skip
の場合(すなわち
skip
+
max_depth
の数学的結果がオーバーフローする場合)、動作は未定義である。
すべての場合において、
alloc
は作成された
basic_stacktrace
に格納され、スタックトレースエントリのストレージ割り当てに使用されます。
目次 |
パラメータ
| alloc | - |
構築される
basic_stacktrace
の全メモリ割り当てに使用するアロケータ
|
| skip | - | スキップするスタックトレースエントリの数 |
| max_depth | - | スタックトレースエントリの最大深度 |
戻り値
確保が成功した場合、前述の
basic_stacktrace
が生成されます。
それ以外の場合、空の
basic_stacktrace
が返されます。
例
|
このセクションは不完全です
理由: 例がありません |
関連項目
新しい
basic_stacktrace
を作成する
(公開メンバ関数) |
|
|
[static]
|
呼び出し元の位置に対応する新しい
source_location
を構築する
(
std::source_location
の公開静的メンバ関数)
|