I have an enumeration called StackID, and throughout my code I have to static_cast it to int quite a bit – e.g.
StackID somestack;
int id = static_cast<int>(somestack);
Is there a shorthand alternative to doing this cast over and over again ? I have heard of “implicit” conversions – is that something I can use here?
(Possibly related to this question)
Is there something you should use instead? Probably not. If you’re doing enum casts to int I would question if you’re using enums properly (or if you’re having to interface with a legacy API.) That being said you don’t have to static_cast enums to ints. That’ll happen naturally.
See this article from MSN on enums and enum->int and int->enum (where you do have to use a static_cast.)