我正在用C ++写一个简单的朴素贝叶斯图像分类器。我想用两种enum class
类型对其进行参数化(一种用于输入像素的类型,一种用于图像的类)。问题在于规范的一部分要求我能够将分类器写入文件,因此我需要能够获取所涉及的枚举类中所有元素的整数值。当然,这要求我从有问题的枚举类中获取所有值。
在Java中,我可以写
EnumSet.allOf(PixelTypeEnum.class)
获得包含枚举类的每个元素的集合。 C ++中有类似的习惯用法吗?
答案 0 :(得分:1)
不,没有。那是因为C ++没有反射。
您可以采用一些方法来模仿EnumSet
(例如,我一直在使用的this FlagSet
implementation,并且确实向其中添加了一个简单的setAll
函数),但是没有构建任何方法-in。