Können wir temporäre pass-in `std::vector<int>` parameter?

void PrintNow(const std::vector<int> &v)
{
    std::cout << v[0] << std::endl;
}

std::vector<int>().push_back(20); //this line generates no complains
PrintNow(std::vector<int>().push_back(20)); //error

Vom VS2010 Sp1:

eror C2664: 'PrintNow' : cannot convert parameter 1 from 'void' an
'const std::vector<_Ty> &'

Q> Ist es möglich, dass wir passieren können einen temporären Vektor-Funktion?

InformationsquelleAutor q0987 | 2012-04-19
Schreibe einen Kommentar