On 03/05/2023 21:42, Marc Mutz via Development wrote:
On 03.05.23 20:06, A. Pönitz wrote:
My main problem with enum classes _in Qt_ is that it is inconsistent
with what has been there traditionally. It is simply no fun to guess
what "style" some enum is (and sure, Peppe has a point when hinting that
the naming scheme wasn't applied uniformly in the pre-past either...)
There is a pretty straight-forward migration path (and I'm sure that
clang-tidy has an automatic transformation already):

For amy unscoped

      enum E { A, B, C, };

you can, since C++11, write

      E::A, E::B, E::C

This rewrite is an automatable task, and, once done, we can make E
scoped, and just have to deal with (desired) fallout of the missing
implicit conversion to underlying_type.

So if your problem is consistency, then just scope the unscoped
enumerators in your code as if they were scoped.

Other fallout would be that currently A, B, and C will most often include E in their name. That makes for the code becoming

E::EA, E::EB, E::EC or E::AE, E::BE, E::CE. I don't like that. Do you think there also is tooling to go to a renamed version w/o the enum name? Or would it be feasible to add such tooling?

Cheers,

André


Thanks,
Marc

--
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development

Reply via email to