Freigeben über


discrete_distribution Class

Generiert eine einzelne ganzzahlige Verteilung.

template<class IntType = int>
    class discrete_distribution {
public:
    typedef IntType result_type;
    struct param_type;
    discrete_distribution();
    explicit discrete_distribution(const param_type& par0);
    template<class Fn>
        discrete_distribution(size_t count,
            double low, double high, Fn func);
    explicit discrete_distribution(const param_type& par0);
    std::vector<double> probabilities() const;
    param_type param() const;
    void param(const param_type& par0);
    result_type min() const;
    result_type max() const;
    void reset();
    template<class Engine>
        result_type operator()(Engine& eng);
    template<class Engine>
        result_type operator()(Engine& eng,
            const param_type& par0);
private:
    std::vector<double> stored_p;
    };

Parameter

Parameter

Description

IntType

Der ganzzahlige Ergebnistyp.

Hinweise

Diese Vorlagenklasse beschreibt <random>, die Werte eines vom Benutzer angegebenen ganzzahligen Typs erzeugt, der nach einem UniformBreite Histogramm von Wahrscheinlichkeiten verteilt wird.

Drei Verteilungen sind sehr ähnlich:

  • discrete_distribution hat UniformBreite Intervalle mit einheitlicher Wahrscheinlichkeit in jedem Intervall.

  • piecewise_constant_distribution Class hat VARYINGBreite Intervalle mit einheitlicher Wahrscheinlichkeit in jedem Intervall.

  • piecewise_linear_distribution Class hat VARYINGBreite Intervalle mit linear unterschiedlicher Wahrscheinlichkeit über jedem Intervall.

Anforderungen

Header: <random>

Namespace: std

Siehe auch

Referenz

<random>

discrete_distribution::discrete_distribution

discrete_distribution::operator()

discrete_distribution::param

discrete_distribution::param_type

discrete_distribution::probabilities