2016-05-26 7 views
0

constexpr impliziert manchmal constBevorzugen constexpr über const

Sollte eine - in diesen Fällen - immer lieber constexpr über const aufgrund beispielsweise Laufzeitgeschwindigkeit-ups oder gibt es Schattenseiten?

+0

ich nicht fragte, was der Unterschied zwischen 'constexpr' und' const' ist, sondern, wenn Sie einen über den anderen vorziehen sollte. In [this] (http://stackoverflow.com/a/19137473/4773274) antwortete @DarioOO die gleiche Frage, ohne eine Antwort zu bekommen. Also, ich verstehe die Downvoter nicht und warum sollte es ein Duplikat für die erwähnte Frage sein. – holzkohlengrill

Antwort

1

constexpr bedeutet, dass der Compiler weiß, dass es konstant ist und seinen Wert berechnen kann. Dadurch können Sie es in Kompilierungskonstrukten wie Vorlagen verwenden, und der Compiler kann möglicherweise exakte Optimierungen vornehmen.

Wenn es constexpr sein kann, lass es sein.