Pointer into vector, but not into a valarray?
<p>I'm trying to extract a const pointer to part way through an array.  I found it works fine when using a vector, but won't compile (VS 2008) when using a valarray.  Can somebody explain what the problem is?</p>

<pre><code>struct vector_test
{
    std::vector&lt;int&gt; v;

    const int *pointy(const int i) const
    {
        return &amp;(v[i]); // Ok
    }
};

struct valarray_test
{
    std::valarray&lt;int&gt; v;

    const int *pointy(const int i) const
    {
        return &amp;(v[i]); // error C2102: '&amp;' requires l-value
    }
};
</code></pre>
