У меня есть класс, который хранит и обрабатывает данные типа T
, который является просто именем класса шаблона.
template<class T=float>
class myClass {
public:
//...
};
Внутри одной из его функций я хотел бы генерировать случайные числа с заданным максимальным абсолютным значением.
Я начал с:
T randvalue = ((T)rand() / RAND_MAX)*MAX_ABS
Он работает с float и double. Но я бы хотел, чтобы он работал и с комплексными числами. Если double
преобразовано в complex<double>
, то у него будет только реальная часть. Мнимая часть остается нулевой, поэтому в настоящий момент я не могу генерировать комплексные числа с мнимой частью.
Я не прошу код, просто подскажи, с чего начать. Я хотел бы понять, как я могу создать шаблонный генератор случайных чисел.
Класс T
- это тип, в котором определены abs
, +
, -
, *
, /
.