cppreference.com говорит:
На практике реализации std :: copy избегают многократных назначений и используют функции массового копирования, такие как std :: memmove, если тип значения является TriviallyCopyable
Однако на странице также утверждается, что перегрузки, которые не принимают политику выполнения, будут constexpr
начиная с C ++ 20. Будет ли стандарт запрещать эту оптимизацию во время выполнения (поскольку std::memmove
не является constexpr) или есть способ оптимизировать constexpr
функции для времени выполнения?