Sobes.tech
Назад к вопросам
Junior — Middle
83

Каково назначение ключевого слова constexpr в C++ и как оно используется?

Компании, где спрашивали
ГК Адепт

Ответ от нейросети

sobes.tech AI

Ключевое слово constexpr в C++ используется для обозначения, что функция или переменная может быть вычислена на этапе компиляции. Это позволяет повысить производительность и безопасность, так как вычисления выполняются заранее.

Основные моменты использования constexpr:

  • constexpr функции должны содержать только выражения, которые могут быть вычислены во время компиляции.
  • Такие функции можно использовать для инициализации константных выражений, например, в определениях массивов или шаблонов.
  • Начиная с C++14, constexpr функции могут содержать более сложные конструкции, включая циклы и ветвления.

Пример:

constexpr int factorial(int n) {
    return n <= 1 ? 1 : (n * factorial(n - 1));
}

int arr[factorial(5)]; // размер массива вычислен на этапе компиляции

Таким образом, constexpr помогает создавать более эффективный и безопасный код, позволяя выполнять вычисления на этапе компиляции.