如何在Visual Studio 2012中用C ++ 11替换所有BOOST_FOREACH?

时间:2014-01-09 07:10:49

标签: c++ visual-studio visual-studio-2012 boost refactoring

我有一个古老的代码库,它使用Boost。我将它迁移到vs2012。现在我想让代码更具可读性和现代性。我想知道如何在visual studio 2012中用C ++ 11 BOOST_FOREACH替换所有for

我希望有一个适用于VS find \ replace的正则表达式。

2 个答案:

答案 0 :(得分:3)

您可以开始的简单VS查找和替换正则表达式是:

Find what: BOOST_FOREACH\((.+), (.+)\)
Replace with: for($1 : $2)

选中使用正则表达式

答案 1 :(得分:-1)

重新定义它,你将保留与C ++ 03的兼容性作为奖励。 假设您#define foreach BOOST_FOREACH,只需重新定义:

#define foreach(value, container) for(value : container)