Ich habe mehrere Container verschiedener Typen.
Ich möchte die gleiche Aktion für alle Elemente in allen Containern durchführen.
Normalerweise handelt es sich dabei mehrere bereichsbasierte for-Schleifen mit duplizierten Code:Wie kann ich mehrere Container in einem Bereich verwenden?
#include <iostream>
#include <vector>
#include <set>
int main() {
//containers
std::vector<int> v1{1,2,3,4,5};
std::set<float> v2{6,7,8,9,10};
//perform iterations
for (auto & it: v1){
std::cout << it << ' ';
}
for (auto & it: v2){
std::cout << it << ' ';
}
}
ich diese in der Lage sein möchte, anstatt zu tun,
durch for-Schleife mehrere Container auf den gleichen Bereich Basis bereitstellt.
Dies ist natürlich nicht funktioniert:
for (auto & it: v1,v2){
std::cout << it << ' ';
}
Gibt es eine Bibliothek Lösung, die ich dies zu erreichen, verwenden könnte?
Erwähnen möchte ich, dass es fast ausdrücklich von der Norm verboten ist, die Regeln für die Sätze _a Komma-Operator nicht neu interpretiert werden kann als Abgrenzung zwei Init-declarators_. – skypjack
@skypjack Ich glaube nicht, dass ich deinen Kommentar verstehe. – krzaq