passing arguments as array of integers
<pre><code>struct G{

    G&amp;operator()(const int**a)
    {
       v&lt;&lt;a;
       std::copy(v.begin(),v.end(),std::ostream_iterator&lt;int&gt;(std::cout, " "));
       return *this;
    }
    friend std::vector&lt;int&gt;&amp;operator&lt;&lt;(std::vector&lt;int&gt;&amp;v,const int** n);
    std::vector&lt;int&gt;v;
};

std::vector&lt;int&gt;&amp;operator&lt;&lt;(std::vector&lt;int&gt;&amp;v,const int** n)
{
    v.insert(v.begin(),*n,*n+sizeof(*n)/sizeof(*n[0]));
    return v;
}

/// use it
G g; 
int v[8]={1,2,3,4,5,6,5,4};
g(&amp;v);
</code></pre>

<p>I have two questions,
1. The above code returns with error <code>cannot convert parameter 1 from 'int (*)[8]' to 'const int **'</code><br>
2. I would like to pass in g as g({1,2,3,4,5,6,5,4}) instead of g(&amp;v). But I don't know how to do that and always wonder if g will accept it.<br>
Thank you.</p>
