std::basic_stacktrace<Allocator>::current

出自cppreference.com
< cpp‎ | utility‎ | basic stacktrace
在2021年5月4日 (二) 06:11由Fruderica對話 | 貢獻所做的修訂版本

(差異) ←上一修訂 | 最新修訂 (差異) | 下一修訂→ (差異)
 
 
 
 
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 =

                                     allocator_type() ) noexcept;
(3) (C++23 起)

s[i] (0 ≤ i < n) 代表當前執行線程中當前求值的第 i+1 個棧蹤條目,其中 n 為棧蹤中的棧蹤條目數。

1) 試圖創建由 s[0]s[1] …… s[n - 1] 組成的 basic_stacktrace 。 consisting of.
2) 試圖創建由 s[m]s[m + 1] …… s[n - 1] 組成的 basic_stacktrace ,其中 mmin(skip, n)
3) 試圖創建由 s[m]s[m + 1] …… s[o - 1] 組成的 basic_stacktrace ,其中 mmin(skip, n)omin(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
(公開成員函數) [編輯]
[靜態]
構造對應調用點位置的新 source_location
(std::source_location 的公開靜態成員函數) [編輯]