vb6中的动态枚举

Moh*_*eem 0 vb6

有没有办法在运行时在vb6中创建枚举?基本上我需要创建一个产品枚举,但我会在运行时获得产品的数据,这应该是变化的.

Cod*_*ray 6

没有.

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

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

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

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