C++ 枚举问题。
所以我有一个文件列表及其 ID,我需要对其进行迭代并执行操作。大多数内容是相同的,但有一些特定于文件的事情需要完成。我尝试将文件 ID 放入枚举中,然后对其进行迭代。然而,文件 ID 是不连续的,并且会跳跃。
目前,我有类似的东西
for(int i = 0; i < FILE_ENUM_MAX; i++)
{
currentFile = myEnum(i);
// do stuff
}
enum myEnum {
file1 = 0x1111,
file2 = 0x8000,
file3 = 0x75,
file4 = 0x120,
FILE_ENUM_MAX = 4
}
Run Code Online (Sandbox Code Playgroud)
这是行不通的;我只是浏览文件 0、1、2 和 3。我的想法是,我不能通过询问项目 N 来获取枚举中的第 N 个项目。那么迭代此枚举的最佳方法是什么?或者我应该摆脱它?我可能可以按数字顺序排列项目,但我更喜欢顺序无关紧要的解决方案。