Как я случайным образом выбираю значение для перечислимого типа в C++? Я хотел бы сделать что-то вроде этого.
enum my_type(A,B,C,D,E,F,G,h,J,V);
my_type test(rand() % 10);
Но это недопустимо... нет неявного преобразования от интервала до перечислимого типа.
Как насчет:
enum my_type {
a, b, c, d,
last
};
void f() {
my_type test = static_cast<my_type>(rand() % last);
}
Неявного преобразования нет, но явное подойдет:
my_type test = my_type(rand() % 10);