На этой странице говорится, что функция make_optional
в C++17 возвращает constexpr optional<...>
. Я думаю (хотя могу ошибаться), для этого потребуется, чтобы optional<T>
имел constexpr
конструктор копирования или перемещения. Однако на этой странице также говорится, что это не так.
Я не знаю, как можно реализовать make_optional
, поскольку в настоящее время существует черновик C++1z. См. этот пост для уточнения. Есть ли какое-то обходное решение, или, может быть, это просто ошибка стандартного черновика/cppreference?
constexpr
из воздуха, знаете ли... - person T.C.   schedule 21.06.2016