Как работает «Шаблон для итерации» в C ++ 26? [дублировать]C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Как работает «Шаблон для итерации» в C ++ 26? [дублировать]

Сообщение Anonymous »

Я экспериментирую с новыми функциями отражения времени компиляции C ++ (как описано в P2996R0) и я тестирую простое enum_to_string () с использованием шаблона для :

Код: Выделить всё

template 
requires std::is_enum_v
constexpr std::string enum_to_string(E value) {
template for (constexpr auto e : std::meta::enumerators_of(^^E)) {
if (value == [:e:]) {
return std::string(std::meta::identifier_of(e));
}
}

return "";
}
Насколько я понимаю, это не обычный цикл, а скорее разворачивание времени компиляции повторного кода с различными заменами шаблонов. Функции, используемые на основе диапазона для петли? Использование шаблона для ? Запланирован ли шаблон для на begin () /? Нужно ли моделировать конкретную концепцию или структуру? enumerators_of ?



Подробнее здесь: https://stackoverflow.com/questions/796 ... ork-in-c26
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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