Den 2017-05-23 kl. 10:44, skrev Daniel Boles:I don't understand how you can have, for instance void f(ResponseType r); if ResponseType is an uninstantiable class. If ResponseType is the name of a class, and you want to treat it as if it were the name an enum, wouldn't it require something like class ResponseType final { public: enum Enum { NONE = -1, REJECT = -2, ACCEPT = -3, ... }; ResponseType() = default; ResponseType(Enum value) : m_value(value) {} operator int() { return m_value; } private: Enum m_value = Enum(); }; Do I require too much of these enums? I try to make something that can be used like an enum class, except for one thing: It shall be implicitly convertible to int. I suspect that this gtkmm-list thread has become longer than necessary because our requirements have been very vague. Kjell |