Size: a a a

2020 August 13

ПК

Побитый Кирпич... in supapro.cxx
Liber Azerate
Я, конечно, не смотрел, но в общем случае это делается через if constexpr, ибо иначе другая ветка не отбрасывается и если там что-то не то... Будет ошибка. Ладно-ладно, это о другом кейсе
Результат будет тот же самый
источник

VS

Vladimir Suisei in supapro.cxx
Liber Azerate
Я, конечно, не смотрел, но в общем случае это делается через if constexpr, ибо иначе другая ветка не отбрасывается и если там что-то не то... Будет ошибка. Ладно-ладно, это о другом кейсе
Какой смысл констекспр если оно все равно в рантайме считаться будет
источник

VS

Vladimir Suisei in supapro.cxx
Я бы вообще очень хотел где-нибудь заюзать констекспр но до сих пор не нашлось места где бы это было нужно/могло бы работать
источник

AF

Aidar Fattakhov in supapro.cxx
Vladimir Suisei
Но это не работает с enum class, надо кастить, а это уб
что кастить?
источник

ПК

Побитый Кирпич... in supapro.cxx
Vladimir Suisei
Но это не работает с enum class, надо кастить, а это уб
Короче, если сузить область допустимых енумов до:
1) Все енумы  монотонно возрастают с 0
2) У всех енумов есть спец. значение LAST, которое всегда последнее

То ты можешь чекать, что твой int < LAST, что даст тебе гарантию каста
источник

AF

Aidar Fattakhov in supapro.cxx
куда кастить?
источник

ПК

Побитый Кирпич... in supapro.cxx
Vladimir Suisei
Я бы вообще очень хотел где-нибудь заюзать констекспр но до сих пор не нашлось места где бы это было нужно/могло бы работать
constexpr if нужен в шаблонном коде
источник

VS

Vladimir Suisei in supapro.cxx
Побитый Кирпич
Короче, если сузить область допустимых енумов до:
1) Все енумы  монотонно возрастают с 0
2) У всех енумов есть спец. значение LAST, которое всегда последнее

То ты можешь чекать, что твой int < LAST, что даст тебе гарантию каста
В одном енуме 0,1 в другом 0,1,2
Ласт 2
Как я первый енум скащу тогда
источник

ПК

Побитый Кирпич... in supapro.cxx
Vladimir Suisei
В одном енуме 0,1 в другом 0,1,2
Ласт 2
Как я первый енум скащу тогда
куда скастишь?
источник

VS

Vladimir Suisei in supapro.cxx
Скащу 2 в первый енум
источник

ПК

Побитый Кирпич... in supapro.cxx
и ласт будет 3 тогда уже
источник

ПК

Побитый Кирпич... in supapro.cxx
Vladimir Suisei
Скащу 2 в первый енум
Зачем, там же только 0, 1 допустимы
источник

VS

Vladimir Suisei in supapro.cxx
Побитый Кирпич
Зачем, там же только 0, 1 допустимы
А как я это узнаю если ласт 3
источник

AF

Aidar Fattakhov in supapro.cxx
Vladimir Suisei
А как я это узнаю если ласт 3
ифами
источник

AF

Aidar Fattakhov in supapro.cxx
тут 2 задачи
источник

ПК

Побитый Кирпич... in supapro.cxx
Vladimir Suisei
А как я это узнаю если ласт 3
Ты енумы между сосбой хочешь кастить?
источник

AF

Aidar Fattakhov in supapro.cxx
понять что в области определения
источник

AF

Aidar Fattakhov in supapro.cxx
и понять строковое представление
источник

AF

Aidar Fattakhov in supapro.cxx
они разные но решаются одинаково перечислением всего, можно макросами
источник

AF

Aidar Fattakhov in supapro.cxx
второе ксати не уверен что какойнибудь pretty_function не разрулит
источник