我有一个枚举,我希望把他们都在集合(然后删除一些与set_intersection算法,但这是offtopic)。 所有的伟大工程,除了林停留在步骤1 :)
如果我有(真正的类具有枚举具有较高的基数)
class MyClass
{
enum Color{red, green , blue}
};
我将如何初始化一个std::set<MyClass::Color>
包含所有枚举。
我能明显手动插入他们一个接一个,与铸造循环做,因为他们是连续的,并从0(我想,如果我不使用所需=枚举定义)开始,但林寻找一个更优雅的方式。
编辑:我更喜欢C ++ 03解决方案,如果可能的,因为问题当前实例都需要它,但如果没有C ++ 11是好事,太了解。