如何在c ++中从指定的枚举中获取随机值?

Fra*_*ale 2 c++ random enums

我想从这个枚举中随机颜色:

enum Color {
red = 10,
black = 3,
pink = 6,
rainbow=99    
};

Color my_randowm_color = ...
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

mol*_*ilo 5

无法枚举枚举的值.

你可以使用一个表:

std::vector<int> colors = {red, black, pink, rainbow};
Run Code Online (Sandbox Code Playgroud)

然后从中挑选一个随机元素.

选择随机元素作为练习.