Avez-vous déjà procédé au remplacement du BOOST_FOREACH
par la gamme basée sur for
boucle ? Y a-t-il des inconvénients à le faire mécaniquement (c'est-à-dire sans faire une étude approfondie du code environnant).
Le contexte : J'ai des sources avec environ 250K lignes, compilées avec Microsoft VC++ 10 (Visual Studio 2010). Le code utilise également BOOST_FOREACH de la bibliothèque boost. Je suis en train d'essayer le VC++ 11 (Visual Studio 2012 RC) qui implémente aussi la méthode basée sur l'intervalle. for
boucle avec le auto
.
Jusqu'à présent, j'ai rencontré la situation où l'élément était déclaré en dehors de l'élément BOOST_FOREACH
(pas de déclaration dans les parenthèses) :
BOOST_FOREACH (element, container) {
...
}
... et le element
était censé avoir la valeur définie dans la boucle après la fonction break
. Pouvez-vous vous souvenir d'une situation similaire problèmes ?
Lorsque le BOOST_FOREACH
contient la déclaration, choisiriez-vous de remplacer le type explicite par auto
? Y a-t-il un avantage à le faire alors que l'on réécrit simplement et mécaniquement la BOOST_FOREACH
au lieu de laisser la déclaration explicite à cet endroit ?
Merci pour votre aide, Petr