Во-первых, у меня нет проблем, но я предпочитаю, чтобы все было как можно проще.
Я использую шаблонный класс с именем Math
, и, помимо множества других вещей, существуют случайные функции.
Различные типы случайных функций и функция для установки случайного начального числа. Таким образом, каждая функция, кроме начальной, использует тип , класс Real
.Но когда я хочу установить семя, мне нужно передать какой-то случайный (ха-ха) тип, чтобы иметь возможность вызвать функцию:
Math<u32>::SeedRandom(System::time());
Опять же, это не настоящая проблема, но мне любопытно, можно ли получить такой же результат без необходимости использовать
.
Вот отрывок из класса Math:
template <class Real>
class Math
{
public:
static void SeedRandom(u32 seed) { srand(seed); }
static Real UnitRandom() { return (Real)((f64)rand() / (f64)RAND_MAX); }
};
кстати. f64
определяется по типу double
и u32
до unsigned int
.