Je voudrais faire quelque chose comme ceci:STL Iterator sans initialisant il
container::iterator it = NULL;
switch (eSomeEnum)
{
case Container1:
it = vecContainer1.begin();
break;
case Container2:
it = vecContainer2.begin();
break;
...
}
for(; it != itEnd ; ++it)
{
..
}
Mais je ne peux pas créer et initialiser un itérateur à NULL. Y a-t-il un moyen de le faire? Idéalement, je voudrais juste créer et assigner l'itérateur dans le commutateur, mais alors il serait hors de portée immédiatement.
L'OP a déclaré qu'il ne peut pas le faire, g ++ et ++ clang ne pas accepter une comparaison nulle ou une initialisation nulle. Donc, AFAIK c'est une réponse sans signification, vous ne devriez pas poster des choses que vous «pensez» à propos de quand il s'avère que cela nuit à la communauté en général. –
Cette réponse est essentiellement la même que celle qui a été acceptée. Comment est-ce mal? Je suis heureux de corriger les erreurs. –