Delphi可以具有枚举类型e.g.:
type
TDay = (Mon, Tue, Wed, Thu, Fri, Sat, Sun); // Enumeration values
是否可以合并枚举类型:
type
TWeekDay = (Mon, Tue, Wed, Thu, Fri);
TWeekendDay = (Sat, Sun);
TDay = (TWeekday, TWeekendDay); //hypothetical syntax
实际上,我需要在不破坏源代码兼容性的情况下将一个大列表分解成它们实际上是不相交的项:
type
TWeekDay = (Mon, Tue, Wed, Thu, Fri);
TWeekendDay = (Sat, Sun);
TDay = (Mon, Tue, Wed, Thu, Fri, Sat, Sun); //identifier redeclared syntax error
然后更改一些变量:
Day: TWeekday;
TDay;
Day: TWeekendDay;
TDay
在道德上相当于strict typing.
最佳答案
答案是不”。
但是,如果子区域是连续的,您可以使用的解决方法是使用子区域:
TDay = (Mon, Tue, Wed, Thu, Fri, Sat, Sun);
TWeekDay2 = Mon..Fri;
TWeekday = type TWeekDay2;
TWeekendDay2 = Sat..Sun;
TWeekendDay = type TWeekendDay;
关于delphi - 在Delphi中是否可以将枚举合并为更大的枚举?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59569919/