Ich liebe wirklich Lambdas und die Fähigkeit, sie in C ++ zu verwenden, ist ein Vergnügen. Aber wie ich Haskell gewohnt bin, wo Lambdas wirklich gut in die Syntax passen, habe ich Probleme damit, sie in C ++ zu verwenden, ohne unlesbare, überladene lange Codezeilen zu schreiben.
Nehmen wir zum Beispiel an, ich schreibe dies:
%Vor%Das ist nicht so schwer zu lesen, der Lambda-Ausdruck ist ziemlich klein. Aber wenn ich eine zwei oder drei Zeilen lange Funktion innerhalb dieser for_each habe, könnte dies ein Problem für meine werden Code-Lese-Fähigkeiten:
%Vor%Diese Zeile wird langsam nervig und für meinen Geschmack schwer zu lesen ...
Was sind Ihre bevorzugten Code-Konventionen für diesen Fall? Soll ich schreiben:
%Vor%oder so ähnlich? Ich denke immer noch, dass diese Syntax ein wenig unnatürlich und schwer zu lesen ist ...: (
Ich möchte lambdas nur als eine andere Funktionsdeklaration betrachten und folge daher den gleichen Konventionen, die ich für andere Funktionen nutze, im Rahmen der Vernunft:
%Vor%Ich würde sagen, wenn der Code für das Lambda mehr als eine oder vielleicht zwei Anweisungen ist, sollte es eine separate benannte Funktion sein.
Tags und Links c++ lambda c++11 coding-style