首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

std::seed_seq::seed_seq

seed_seq();

(1)

(since C++11)

seed_seq( const seed_seq& ) = delete;

(2)

(since C++11)

template< class InputIt > seed_seq( InputIt begin, InputIt end );

(3)

(since C++11)

template< class T > seed_seq( std::initializer_list<T> il );

(4)

(since C++11)

1%29默认构造函数创建一个std::seed_seq具有长度为零的初始种子序列的。

2%29复制构造函数被删除:std::seed_seq是不可复制的。

3%29构造一个std::seed_seq通过遍历范围获得初始种子序列[begin, end)并复制通过反引用迭代器(Modo 232)获得的值。

%28,也就是,复制了较低的32位

4%29相当于seed_seq(il.begin(), il.end()).此构造函数启用列表初始化...

参数

begin, end

-

the initial seed sequence represented as a pair of input iterators whose std::iterator_traits<>::value_type is an integer type

il

-

std::initializer_list of objects of integer type, providing the iniial seed sequence

类型要求

-输入必须符合输入器的要求。

例外

1%29不投

二次

代码语言:javascript
复制
#include <random>
#include <sstream>
#include <iterator>
int main()
{
    std::seed_seq s1; // default-constructible
    std::seed_seq s2{1, 2, 3}; // can use list-initialization
    std::seed_seq s3 = {-1, 0, 1}; // another form of list-initialization
    int a[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    std::seed_seq s4(a, a + 10); // can use iterators
    std::istringstream buf("1 2 3 4 5"); 
    std::istream_iterator<int> beg(buf), end;
    std::seed_seq s5(beg, end); // even stream input iterators
}

二次

代码语言:txt
复制
 © cppreference.com

在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。

扫码关注腾讯云开发者

领取腾讯云代金券