生成随机枚举
如何在 C++ 中随机选择枚举类型的值? 我想做这样的事情。
enum my_type(A,B,C,D,E,F,G,h,J,V);
my_type test(rand() % 10);
但这是非法的......没有从 int 到 enum 类型的隐式转换。
How do I randomly select a value for an enum type in C++?
I would like to do something like this.
enum my_type(A,B,C,D,E,F,G,h,J,V);
my_type test(rand() % 10);
But this is illegal... there is not an implicit conversion from int to an enum type.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
怎么样:
How about:
没有隐式转换,但显式转换可以工作:
There is no implicit conversion, but an explicit one will work:
这是我最近解决类似问题的方法。我将其放入适当的 .cc 文件中:
在定义枚举的标头内:
并生成随机方向:
不要忘记
Here is how I solved a similar problem recently. I put this in an appropiate .cc file:
Inside the header that defines the enum:
And to generate a random direction:
Don't forget to