это обыкновенный enum, даже не класс, из пары сотен числовых вариантов.
допустим также, что объявлена константа static constexpr int MyEventTypeInt = 513; (enum был задуман как расширяемый разработчиками, использующими фреймворк).
требуется переменная e с типом QEvent.
внимание, вопрос на барабане: какие из следующих кусков кода компилируются в требуемое?
1a.
QEvent e(QEvent::Type(513));
1b.
QEvent e(QEvent::Type(MyEventTypeInt));
2a.
QEvent e((QEvent::Type(MyEventTypeInt)));
2b.
QEvent e{QEvent::Type(MyEventTypeInt)};
3a.
QEvent e(513);
3b.
QEvent e(MyEventTypeInt);
4.
QEvent e = QEvent(QEvent::Type(MyEventTypeInt));
Стандарт какой?
не enum class? скомпилятся все, не скомпилился бы только QEvent{ 513 } / QEvent{ MyEventTypeInt } (которых нет в ответах)
В общем, занятно, как мнения разделились, и ладно бы одинаково низкие проценты — но там просто рандом по ответам. Вот ответы, как и обещал:
Обсуждают сегодня