2011-03-14 136 views
0

我使用C.我必须大枚举,其中一个菜单ID和窗口ID之一。目前,它们是通过一个数组映射到对方的,因此必须将这些元素完美地放入数组中,并且只要做了某些更改就必须将其全部放回到正确的位置。将菜单映射到窗口的更好方法是什么?谢谢如何将一个枚举的元素映射到另一个枚举?

回答

0

你是否明确地给每个enum的成员分配值?菜单ID如何映射到窗口ID?你可以发布一部分枚举作为例子吗?

如果enums很长,这可能是一个很好的候选代码生成脚本。将您的ID存储在(例如)列出匹配的窗口ID和菜单ID对的CSV文件中。然后,编写一个分析CSV文件的脚本,并生成一个包含适当的enum定义的标题。如果您使用makefile(或类似的)构建项目,那么将这种自动生成的头文件集成到构建系统中应该相当简单。

+0

菜单ID和窗口ID都是从XML生成的,但它们之间是完全分离的,因为窗口不仅仅用于菜单。我没有明确地给枚举赋值,只是一个函数,它从当前输入menuID的元素处的一个窗口数组返回窗口。 – Ayeayeron 2011-03-14 23:53:24

+0

菜单ID是与窗口ID一对一映射的吗?更好的是,你可以发布一些示例代码来了解你当前的代码正在做什么(enum的一部分加上你提到的函数的例子)? – bta 2011-03-15 00:25:12

相关问题