BOOST_FOREACH坏了;是否有可能解决?

时间:2013-01-01 02:23:24

标签: c++ boost-foreach

如果使用名称与循环变量名称相同的变量名称,BOOST_FOREACH会混淆:

#include <boost/foreach.hpp>
#include <vector>

struct Test { };
std::vector<int> test(Test) { return std::vector<int>(); }
Test c;

int main()
{
    BOOST_FOREACH (int c, test(c))
    {
    }
}

我理解问题的原因,但我想知道,这有可能解决吗? 我想不出任何解决方法(不需要虚函数等)。

0 个答案:

没有答案