まあ、こんなページもあるみたいですが・・・。標準のものよりは随分まともで、妥協できる感じではないかと思います。
#ifndef RANDOM_GENERATOR_HPP #define RANDOM_GENERATOR_HPP // // Distributed under the Boost Software License, Version 1.0. (See accompanying // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) // // Copyright (c) 2009 OKI Miyuki (oki at hunes dot co dot jp) // #include <ctime> #include <boost/random.hpp> /// random generator class /*! @note Default random generator is too poor. */ struct random_generator { private: boost::mt19937 mt_gen_; public: random_generator() : mt_gen_(static_cast<unsigned long>(std::time(0))) {} int operator () (int n) { // Using mod is not uniform. but behavior is less. return (mt_gen_() % n); } }; #endif // RANDOM_GENERATOR_HPP
0 件のコメント:
コメントを投稿