Diese Frage ist eine Frage des Stils, da Sie immer eine for-Schleife oder ähnliches schreiben können; gibt es jedoch eine weniger aufdringliche STL oder BOOST äquivalent zum Schreiben:
%Vor%?
So etwas wie (imaginiert) das:
%Vor%Ich denke, es wäre 1) weniger Tipparbeit, 2) einfacher zu lesen, 3) weniger Änderungen, wenn Sie sich entschieden, Basistyp / Containertyp zu ändern.
BEARBEITEN: Danke für deine Hilfe, was nun, wenn ich einige Argumente an die Member-Funktion übergeben möchte?
Siehe std::for_each
und std::bind
Dokumentation für Details.
Sie haben Ihren Schnitt verpasst: Wie auch immer, hier ist ein weiterer Weg, um das zu erreichen, was Sie wollen, ohne Boost zu benutzen, wenn es sein muss:
%Vor%Sie können std :: for_each oder boost's foreach konstruiert .
Verwenden Sie Boost BOOST_FOREACH oder BOOST_REVERSE_FOREACH, wenn Sie die Logik nicht in eine andere Funktion verschieben möchten.
Wenn Sie die Leistung verbessern und nicht nur Ihren Code verbessern möchten, benötigen Sie eine Kartenfunktion. Eric Sink hat eine .net-Implementierung
geschriebenTags und Links c++ stl boost coding-style