我正在尝试提取一个 const 指针以部分通过数组。我发现它在使用向量时工作正常,但在使用 valarray 时不会编译(VS 2008)。有人可以解释问题是什么吗?
struct vector_test
{
std::vector<int> v;
const int *pointy(const int i) const
{
return &(v[i]); // Ok
}
};
struct valarray_test
{
std::valarray<int> v;
const int *pointy(const int i) const
{
return &(v[i]); // error C2102: '&' requires l-value
}
};