Macro loop für vector
-
Oder std::for_each http://www.cplusplus.com/reference/algorithm/for_each/
-
Oder aber du benutzt (bzw. wartest auf) einen Compiler, der schon die neue Variante mittels 'auto' (C++0x) beherrscht:
for(auto iteratorName = vector.begin(); iteratorName != vector.end(); ++iteratorName)
-
-
Oder std::for_each + Lambda (nur für C++0x / Boost).
-
theta schrieb:
Oder std::for_each + Lambda (nur für C++0x / Boost).

-
Wenn wir schon bei C++0x sind, dann lieber gleich so:
for (int val : testv)cout << val << endl;Oder mit einem Makro unter Verwendung von BOOST_FOREACH und auto:
foreach(val,vec)cout << val << endl;
-
Athar schrieb:
Wenn wir schon bei C++0x sind, dann lieber gleich so:
for (int val : testv)cout << val << endl;Oder mit einem Makro unter Verwendung von BOOST_FOREACH und auto:
foreach(val,vec)cout << val << endl;

-
Funktioniert die Range-Based For in C++0x eigentlich so, wie ich mir das vorstelle?
for (auto var : container) { // var wird jeweils kopiert } for (auto& var : container) { // var wird nur referenziert }
-
Ich sehe schon, ein größeres c++ Problem...
Alle vorgeschlagenen Lösungen haben overhead oder kommen erst mit dem C++0x Standard daher.
-
jaja, ein riesen problem..
-
Osbios schrieb:
Alle vorgeschlagenen Lösungen haben overhead
Nur wnen du deinem Compiler das Optimieren verbietest.
-
Nexus schrieb:
Funktioniert die Range-Based For in C++0x eigentlich so, wie ich mir das vorstelle?
Ja, das funktioniert genau so.
