operator<<,>>(std::philox_engine)
來自 cppreference.com
< cpp | 數值 | 隨機 | philox_engine
template< class CharT, class Traits > friend std::basic_ostream<CharT, Traits>& |
(1) | (C++26 起) |
template< class CharT, class Traits > friend std::basic_istream<CharT, Traits>& |
(2) | (C++26 起) |
寫入後,os 的原始 fmtflags 和填充字元將被恢復。
讀取後,is 的原始 fmtflags 將被恢復。
- 如果 text 之前未使用輸出流 pr 寫入,則行為未定義。
- 否則,如果以下任何一個值為 false,則行為未定義:
- is.getloc() == pr.getloc()
- std::is_same<decltype(is)::char_type,
decltype(pr)::char_type>::value - std::is_same<decltype(is)::traits_type,
decltype(pr)::traits_type>::value
- 否則,如果 text 不是 decltype(e) 任何狀態的有效文字表示,則 e 的狀態保持不變,並呼叫 is.setstate(std::ios_base::failbit)。
- 否則,給定另一個與 e 型別相同的引擎 eng。如果 text 之前已由 pr << eng 寫入,並且在 pr << eng 和 is >> e 之間沒有對 e 或 eng 的干預呼叫,則 e == eng 為 true。
這些函式模板對普通的非限定或限定查詢不可見,並且只有在 decltype(e) 是引數的關聯類時才能透過實參依賴查詢找到。
目錄 |
[編輯] 引數
os | - | 要插入資料的輸出流 |
is | - | 用於提取資料的輸入流 |
e | - | 偽隨機數引擎 |
[編輯] 返回值
1) os
2) is
[編輯] 複雜度
1,2) O(n)。