Dies ist eine vereinfachte Version, was ich gerne tun würde.Wie kann ich eine temporäre Variable in einer constexpr Funktion haben?
constexpr float f(float a, float b){
constexpr float temp = a+b;
return temp*temp*temp;
}
In meiner Version, a + b ist etwas viel komplizierter, so dass ich nicht will, und fügen Sie ihn dreimal schneiden. Die Verwendung von 3 * (a + b) ist auch keine funktionierende Lösung für die reale Funktion. Ich versuche, die Frage in Bezug auf Syntax und nicht auf Algebra zu halten. Ich kann es zur Arbeit bringen, indem ich a + b auf seine eigene constexpr-Funktion verschiebe, aber ich würde es vorziehen, den Namensraum nicht mit ansonsten nutzlosen Funktionen zu verschmutzen.
Dies ist die Nummer 1 bei Constexpr. –