此代码在ideone上编译良好,但在Visual Studio 2013上编译不正确。它是编译器错误吗?
#include <vector>
#include <algorithm>
int main()
{
std::vector<int> v1, v2;
typedef decltype(v1) t1;
std::for_each(v1.begin(), v1.end(), [&](const t1::value_type& a1)
{
typedef decltype(v2) t2;
std::for_each(v2.begin(), v2.end(), [&](const t2::value_type& a2)
{
});
});
}
错误C2825:'t2':后跟'::'
时必须是类或命名空间