J'ai une classe simple qui me sera utile pour générer des nombres aléatoires en utilisant default_random_engine
.Initialisation statique default_random_engine
Random.h:
#include <random>
using namespace std;
class Random
{
public:
Random();
~Random() {}
private:
static default_random_engine _engine;
};
Random.cpp:
#include "Random.h"
Random::Random()
{
_engine = default_random_engine{}; //Will this be initialized every time I create an object of type Random?
}
Est-ce que _engine
être initialisé à chaque fois que je crée un objet de type Random
? Je veux juste qu'il reste comme après la première initialisation parce qu'on m'a dit que je pouvais utiliser le même moteur plusieurs fois.
@NathanOliver Merci, vous m'a aidé à comprendre. – AnDrOiD
Si 'using namespace std;' est là pour des raisons autres que de rendre le code dans cette question plus courte: S'il vous plaît ne le faites pas. Le mettre dans un '.cpp' est déjà assez mauvais, mais dans les en-têtes, c'est plutôt inacceptable. –
@BaummitAugen Merci de me l'avoir fait savoir! – AnDrOiD