Является объектом , который потребляет последовательность целочисленных данных и производит требуемое число без знака целочисленных значений , на основе потребляемых данных. [ Такой объект предоставляет механизм, позволяющий избежать репликации потоков случайных значений. Это может быть полезно, например, в приложениях, требующих большого количества машин случайных чисел. ] seed sequence i 0≤i<232 Note: — end note
Класс S удовлетворяет требованиям начальной последовательности, если выражения, показанные в таблице 102 , действительны и имеют указанную семантику, а S также если они удовлетворяют всем другим требованиям этого раздела [rand.req.seedseq]. В этой таблице и в этом разделе:
a)T тип, названный Sассоциированным result_type;
b)q является значением S и, r возможно, константным значением S;
c)ib и ie являются итераторами ввода с целым числом без знака value_type длиной не менее 32 бит;
d)rb и re являются изменяемыми итераторами произвольного доступа с целым числом без знака value_type не менее 32 бит;
e)ob - итератор вывода; а также
f)il это значение initializer_list<T>.
Выражение | Тип возврата | До / после состояния | Сложность |
S::result_type | T | T представляет собой , unsigned integer type по меньшей мере , 32 бита. | время компиляции |
S() | Создает начальную последовательность с тем же начальным состоянием, что и все другие исходные последовательности типа, сконструированные по умолчанию S. | постоянный | |
S(ib,ie) | Создает начальную последовательность, имеющую внутреннее состояние, которое зависит от некоторых или всех битов предоставленной последовательности [ib,ie). | O(ie−ib) | |
S(il) | То же, что и S(il.begin(), il.end()). | такой же как S(il.begin(), il.end()) | |
q.generate(rb,re) | void | Ничего не делает, если rb == re. В противном случае заполняет предоставленную последовательность [rb,re) 32-битными величинами, которые зависят от последовательности, предоставленной конструктору, и, возможно, также зависят от истории generateпредыдущих вызовов. | O(re−rb) |
r.size() | size_t | Количество 32-битных единиц, которые будут скопированы при вызове r.param. | постоянный |
r.param(ob) | void | Копирует в указанное место назначения последовательность 32-битных единиц, которые могут быть предоставлены конструктору второго объекта типа S, и которые будут воспроизводить в этом втором объекте состояние, неотличимое от состояния первого объекта. | O(r.size()) |