Gibt es einen Leistungsunterschied, wenn der Code in einen sofort aufgerufenen Lambda-Ausdruck eingeschlossen wird?
Posted: 13 Jan 2025, 09:11
Hier ist etwas Code:
Es ist auch möglich, es auf seltsame Weise wie folgt zu schreiben, indem man Lambdas anstelle von geschweiften Klammern verwendet:
Gibt es einen Leistungsunterschied zwischen den beiden Versionen?
Meinen Überprüfungen zufolge gibt es beim Kompilieren mit keinen Unterschied in der generierten Assembly in Clang Optimierungen, daher gehe ich davon aus, dass es keinen Leistungsaufwand geben wird. Aber ist das immer so?
Code: Select all
void f()
{
// stuff
{
// code
}
}
Code: Select all
void f()
{
// same stuff as above
[&]{
// same code as above
}();
}
Meinen Überprüfungen zufolge gibt es beim Kompilieren mit keinen Unterschied in der generierten Assembly in Clang Optimierungen, daher gehe ich davon aus, dass es keinen Leistungsaufwand geben wird. Aber ist das immer so?