Страницы

Поиск по вопросам

вторник, 31 декабря 2019 г.

Использование const и constexpr

#cpp #cpp11


В каком классе задач предпочтительнее использовать constexpr? У меня создалось впечатление,
что практически всегда я могу использовать const. Когда требуется задавать значение
на этапе компиляции?
    


Ответы

Ответ 1



У методов const подразумевает compile-time проверку на отсутствие модифицации (и таких возможностей, например, возвращение неконстантного указателя) состояния типа, исключая mutable-поля. Само выражение может вычисляться и в run-time. constexpr же позволяет помечать выражения, которые обязательно вычисляются на этапе компиляции и могут использоваться, скажем, в качестве параметров шаблонов, или в инициализаторах констант.

Комментариев нет:

Отправить комментарий