0
Ich habe eine FunktionLeistungsvergleich, wenn Argumente bekannt sind?
enum Limit {MIN, MAX};
inline int f(pair<int, int> p, Limit l)
{
return l == MIN ? p.first : p.second;
}
Vergleichen Sie die computatinal Zeit von f(p, MIN)
und p.first
, ist die erste, langsamer auch mit einem guten Compiler in Release-Version?
So bauen Sie mit Optimierungen aktiviert? Gibt es einen Unterschied, wenn Sie dem Compiler sagen, dass die Funktion 'inline' gemacht werden könnte? Wie wäre es mit 'constexpr'? Und was meinst du mit "langsamer"? Wie hast du gemessen? Was ist der Unterschied? –
Wenn Argumente zur Kompilierzeit bekannt sind, dann ist die Funktion 'constexpr' eine gute Idee. –
Wie messen Sie die Leistung und was ist der Unterschied? f (p, MIN) enthält p.first, also braucht es natürlich mehr Zeit. –