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
從VS2010 SP1:我們可以創建臨時傳入`std :: vector <int>`參數嗎?
eror C2664: 'PrintNow':不能轉換參數1從 '無效' 到 '常量性病::矢量< _Ty> &'
Q >我們可以通過臨時向量來運行嗎?
至少在GCC 4.4.5中支持'{20}'語法。 – 2012-04-19 14:50:05
在C++ 03中,你可以使用['boost :: list_of'](http://www.boost.org/doc/libs/1_39_0/libs/assign/doc/index.html#list_of)沒有額外的命名變量的在線解決方案。 – 2012-04-19 15:11:23