Я знаю, что C++ 11 позволяет указывать выражения для времени компиляции, а не времени выполнения, используя constexpr.Когда нужно установить конструктор как constexpr?
Я знаю, что это может быть сделано и для конструктора класса. Однако этот конструктор должен инициализировать все члены класса, чтобы использоваться как constexpr (во время компиляции), и любые функции, которые он вызывает, также должны быть отмечены как constexpr.
Но когда будет установлен его конструктор на constexpr, и есть ли другие преимущества, кроме небольшой оптимизации?
Будет ли это означать, что если я МОЖЕТ, я ВСЕГДА должен установить мой конструктор как constexpr?
Возможный конфликт может заключаться в том, что использование большого количества объектов 'constexpr' увеличивает время компиляции. И это не означает, что это никогда не стоит. – Snps