0

有没有办法在 vb6 运行时创建枚举?基本上我需要创建一个产品枚举,但我会在运行时获取产品的数据,这应该会有所不同。

4

1 回答 1

6

不。

枚举的全部意义在于在编译时提供类型安全。例如,如果一个函数接受一个枚举值作为参数,则有效输入的范围是根据枚举类型的成员明确定义的。它不必担心如何处理无效输入,因为这会导致编译器错误。

没有办法在运行时实现这种类型安全,因此动态创建的枚举没有多大意义。无论如何,它们不是语言或运行时环境支持的功能。

您只需使用唯一标识符(如字符串或数值)代替枚举。如果需要,您可以创建一个数组或另一个集合类,将这些 ID 映射到唯一键(例如,产品名称)。然后,您可以在运行时动态地将产品添加到数组中,并按名称检索它们的 ID。

请注意,使用此策略,您将需要手动验证输入并处理任何错误。

于 2013-07-31T10:40:11.877 回答