【问题标题】:How to use std::uniform_int_distribution<T>::param()?如何使用 std::uniform_int_distribution<T>::param()?
【发布时间】:2020-07-28 03:09:52
【问题描述】:

我希望能够在创建std::uniform_int_distribution&lt;T&gt; 对象后重置它的下限和上限,并且该类中的param 函数似乎允许此功能。见https://en.cppreference.com/w/cpp/numeric/random/uniform_int_distribution/param (2)。

但我不清楚如何构造它所接收的 param_type 对象。有人可以提供一个例子吗?

【问题讨论】:

标签: c++ random uniform-distribution


【解决方案1】:

从文档中看不是很清楚,但这里是:

auto d = std::uniform_int_distribution<int>{1, 10};

d.param(std::uniform_int_distribution<int>::param_type{11, 24});

您可以通过以下方式在文档中找到此信息:

std::uniform_int_distribution

成员类型

param_type:参数集的类型,见 RandomNumberDistribution.

RandomNumberDistribution

PD::param_type命名的类型,其中

  • [...]
  • 有一个构造函数,其参数与 D 的每个构造函数相同,它们的参数对应于 分布参数。

所以基本上std::uniform_int_distribution&lt;int&gt;::param_type 有一个构造函数,其参数与std::uniform_int_distribution&lt;int&gt; 相同。

【讨论】:

    猜你喜欢
    • 2015-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-04
    • 1970-01-01
    相关资源
    最近更新 更多