@ Garf365 Antwort ist die beste. Ein Lambda und eine Klasse wie diese sind einander am ähnlichsten - Sie können sie genau wie aufrufbare Funktionen verwenden und Zeiger und Verweise darauf weitergeben.
Sie können jedoch auch die Verwendung von Funktionsvorlagen lernen, um diese Arbeit während der Kompilierzeit auszuführen, insbesondere wenn sie als Parameter an eine andere Vorlage übergeben werden, wie bei der Verwendung der Boost-Bibliothek.
Ich war neugierig, ob es eine Verbesserung in der Komplexität des Codes gab, den der Compiler mit einer Funktionsvorlage erzeugte, und es gab!
Schauen Sie selbst:
Vielen Dank für die Frage und führen mich dazu, es zu untersuchen!
es ist ein Funktor, dh ein Objekt, das wie eine Funktion funktioniert. siehe [hier] (http://stackoverflow.com/questions/7627098/what-is-a-lambda-expression-in-c11) – sp2danny