Error c2064 when passing an object vector by reference : <p>I was making coding for fun with vectors, but then I bumped into this error: 
Error c2064 'This term doesn't give back a function that accepts 1 arguments';
The error is given in line 33, when I call the function 'ins' passing my vector 'Vett' as an argument, as said in the function declaration.</p>

<p>Code:</p>

<pre><code>struct Num_and_Car {
int n;
char c;
`};`

bool pari (Num_and_Car Acces) {
if (Acces.n % 2 == 0)
    return true;
else return false;`
}

void ins (std::vector &lt;Num_and_Car&gt;Vettore) {
 int ins;
 for (int i = 0; Vettore[i].n != 0; i++) {
    std::cin &gt;&gt; ins;
    std::cout &lt;&lt; "Succesfull\n";
    if (ins == 0)
        break;
    else
        Vettore.push_back({ ins });
        std::cout &lt;&lt; "Succesfull\n";
 }  
}

int main () {
int ins = 0;
std::vector &lt;Num_and_Car&gt; Vett;
std::cout &lt;&lt;"Succesfull\n";
Vett.push_back({1 });
ins (Vett);
std::cout &lt;&lt;"Succesfull\n";

int n = std::count_if(Vett.begin(), Vett.end(), pari);
std::cout &lt;&lt; n &lt;&lt;"pari\n";
std::cin &gt;&gt; n;
}
</code></pre>

<p>Thanks in advice for any help.</p>
