Каковы общие советы по преобразованию кода в constexpr
? Скажем, есть алгоритм некоторой геометрической трансформации (входной) геометрической фигуры. Ввод и вывод различаются по природе и размеру и нетривиально зависят друг от друга. В настоящее время он реализован как класс, который в настоящее время использует std::map
и std::vector
(без потери общности).
Как можно реорганизовать код, использующий динамическую память, чтобы получить код, который соответствует требованиям для константных выражений?
Я могу представить некоторую комбинацию constexpr
-совместимых контейнеров и constexpr
-совместимую реализацию "распределителя стека" ( для достаточно большого хранилища) на каждые value_type
используемых контейнеров. Но есть проблема: таких контейнеров я не встречал. Но, может быть, есть другие способы?
constexpr
функции? Затем вы можете создать выражение, переменную или функциюconstexpr
. И это не повредит, если вы сделаете что-тоconstexpr
, если это что-то действительно не является или не может быть константой времени компиляции, в этом случае это просто подразумеваетconst
. - person Some programmer dude   schedule 21.01.2016reinterpret_cast
, размещениеnew
и прочие странности. Но я хочу написатьconstexpr
код, который с точки зрения читателя похож на свой неconstexpr
аналог. Я хочу установить какое-то взаимное предубеждение. - person Tomilov Anatoliy   schedule 21.01.2016