я также хочу различить прямое и инициализацию и, таким образом, написал эти концепции : < /p>
Код: Выделить всё
template
concept can_direct_init_from = requires { A{std::declval()}; };
template
concept can_copy_init_from = requires { A a = std::declval(); };
< /code>
Первый, я думаю, строго эквивалентен std :: constructible_from < /code>, но я не знаю аналогичную концепцию для случая инициализации копирования.
std::convertible_toПомимо моей версии плохо сформирована: < /p>
Ошибка: ожидаемая первичная экспрессия до 'a' < /p>
< /blockquote>
afau, я не могу «объявить» переменную внутри `Требуется предложение. "? Возможно, исправляя мою концепцию?
Подробнее здесь: https://stackoverflow.com/questions/794 ... ialization
Мобильная версия