enhancing enums

Jeremie Pelletier jeremiep at gmail.com
Tue Dec 8 21:38:24 PST 2009


hehe45 wrote:
> In c++ it is valid syntax to have trailing commas at the and of enum definitions:
> enum {a, b, c, };
> This would be a useful addition to D too.
> 
> The enum class syntax from c++0x should also adopted by D, this would allow named enums which are not automatically encased by a namespace:
> 
> enum EnumName {A, B, C};       ---> A, B and C are global constants
> enum class EnumName {A, B, C};---> A, B and C are in the EnumName namespace

I don't think that's necessary, you could simply do:

typedef int EnumName;
enum : EnumName {A, B, C}

And your global scope is happily polluted!



More information about the Digitalmars-d mailing list