怎么对C++枚举(不是类)里面的东西进行随机
时间: 2024-02-20 10:02:37 浏览: 25
如果你想在枚举类型中随机选择一个值,可以先定义一个包含所有枚举值的数组,然后使用随机数生成器来随机选择一个数组元素,最后返回所选元素所对应的枚举值。
以下是一个示例代码:
```c++
#include <iostream>
#include <cstdlib>
#include <ctime>
enum Color { RED, GREEN, BLUE, YELLOW };
int main()
{
Color colors[] = { RED, GREEN, BLUE, YELLOW };
// 初始化随机数生成器
srand(time(NULL));
// 生成随机数并选择相应的颜色
int index = rand() % 4;
Color color = colors[index];
// 输出所选颜色
switch (color)
{
case RED:
std::cout << "Red" << std::endl;
break;
case GREEN:
std::cout << "Green" << std::endl;
break;
case BLUE:
std::cout << "Blue" << std::endl;
break;
case YELLOW:
std::cout << "Yellow" << std::endl;
break;
}
return 0;
}
```
在这个示例中,我们定义了一个枚举类型 `Color`,包含了四个枚举值。然后,我们定义了一个包含了所有枚举值的数组 `colors`。接着,我们使用 `srand` 函数初始化随机数生成器,再使用 `rand` 函数生成一个随机数来选择数组中的一个元素,最后返回所选元素所对应的枚举值。最后,我们使用 `switch` 语句输出所选颜色的名称。