This question already has an answer here:
What I meant for 'needed' is something like this.
constexpr int f(int a) {
return a;
}
constexpr int a = f(2); // since a is constexpr, f() should be constexpr
Is is possible that f()
is called in runtime if a
is not constexpr?
int a = f(2);
Since a
is not constexpr, f()
doesn't need to be evaluated in compile-time. But I wonder if constexpr
is forced to be evaluted in compile-time when all the arguments are compile-time constants.
Aucun commentaire:
Enregistrer un commentaire