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

std::random_device::entropy

double entropy() const;

?

(since C++11)

获得随机数设备熵的估计,它是0和log之间的浮点值。

2%28max%28%29+1%29%28,等于std::numeric_limits<unsignedint>::digits29%。如果设备具有n个个体概率为P的状态

0,...,P

N-1,设备熵S定义为.

S=-Σn-1

I=0P

ILOG%28P

I%29

确定性随机数发生器%28例如。伪随机引擎%29的熵为零.

例外

noexcept规格:

noexcept

返回值

设备熵的值,如果不适用,则为零。

注记

这个功能在一些标准库中没有完全实现。例如,GNU libstdc++LLVM libc++对于libstdc++,即使设备是不确定的%28,也始终返回零,请参见虫67578%29.相比之下,Microsoft Visual C++实现总是返回32,并且助推,随机返回10。

其中一个实现的示例输出。

二次

代码语言:javascript
复制
#include <iostream>
#include <random>
 
int main()
{
    std::random_device rd;
    std::cout << rd.entropy() << '\n';
}

二次

可能的产出:

二次

代码语言:javascript
复制
32

二次

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

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

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com