Vlad Didenko Vlad Didenko - 1 year ago 95
C++ Question

Avoid hardcoding enum type


code it would be nice to avoid mentioning a specific enum qualifier every time I use the enum value - as it is a new code and it is refactored a lot.

For that purpose is it possible something in the spirit of the last line of this pseudo code:

enum abc { a,b,c };
// some long code of events which returns the enum's value
auto e = []()->abc{return abc::b;}();
if (e == std::declval(e)::a) { ...

If not possible in
will it become possible in
or 17?

Answer Source

You're close, you can use decltype:

if (e == decltype(e)::a) {
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download