Как утверждать, что предложение constexpr if else никогда не произойдет?C++

Программы на C++. Форум разработчиков
Anonymous
Как утверждать, что предложение constexpr if else никогда не произойдет?

Сообщение Anonymous »

Я хочу вызвать ошибку времени компиляции, если условие не входит в состав constexpr, если условие истинно, например:

if constexpr(condition1){
...
} else if constexpr (condition2) {
....
} else if constexpr (condition3) {
....
} else {
// I want the else clause never taken. But I heard the code below is not allowed
static_assert(false);
}

// I'd rather not repeat the conditions again like this:
static_assert(condition1 || condition2 || condition3);


Подробнее здесь: https://stackoverflow.com/questions/539 ... ver-happen

Вернуться в «C++»