【问题标题】:Why are signed/unsigned 8-bit integer types not supported by C++ random number generation? [duplicate]为什么 C++ 随机数生成不支持有符号/无符号 8 位整数类型? [复制]
【发布时间】:2020-06-08 15:14:09
【问题描述】:

来自 C++11 §26.5.1.1 关于随机数生成的要求:

在整个 26.5 小节中,实例化模板的效果:[...] 具有名为 IntType 的模板类型参数,除非相应的模板参数是 cv 非限定的并且是以下之一short、int、long、long long、unsigned short、unsigned int、unsigned long 或 unsigned long long。

8 位 有符号/无符号类型被排除在要求中这样的随机数生成之外的原因是什么?

【问题讨论】:

    标签: c++ random c++-standard-library


    【解决方案1】:

    这个问题被提出为LWG Issue 2326,它被关闭为“不是缺陷”。

    不是因为人们不赞成,而是因为它是一个新功能,而不是一个错误。委员会认为最好写一篇论文来讨论做出这种改变的利弊。

    目前还没有人写过这样的论文。

    正如@NathanOliver 所说,这个问题是asked before,那里的链接表明这有点争议。

    【讨论】:

    猜你喜欢
    • 2015-07-19
    • 2018-10-17
    • 2016-01-05
    • 2011-05-26
    • 2016-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-09
    相关资源
    最近更新 更多