你有没有经历过用BOOST_FOREACH
基于范围的for
循环替换的过程?机械地做它时是否有任何陷阱(即没有对周围的代码进行深入研究)。
背景:我确实有大约 250K 行的源代码,使用 Microsoft VC++ 10 (Visual Studio 2010) 编译。该代码还使用来自 boost 库的 BOOST_FOREACH。我只是在尝试for
使用auto
.
到目前为止,我遇到过在BOOST_FOREACH
(括号中没有声明)之外声明元素的情况:
BOOST_FOREACH (element, container) {
...
}
...并且element
期望在 . 之后的循环中设置值break
。你能记住类似的问题吗?
当BOOST_FOREACH
包含声明时,您会选择用 替换显式类型auto
吗?BOOST_FOREACH
当一个人只是机械地重写而不是将显式声明留在那里时,这样做有什么好处吗?
谢谢你的帮助,彼得