我有一個std::vector<std::string> temp_results
,我想使用std :: for_each的去通過這個載體,將字符串,所以我炮製以下建築:的std :: stringstream的作爲參數傳遞給函數
std::stringstream ss;
std::string res = std::for_each(temp_results.begin(), temp_results.end(), boost::bind(addup, _1, ss));
std::string addup(std::string str, std::stringstream ss)
{
ss << str;
ss << ";";
return ss.str;
}
我得到以下錯誤,這是我無法理解的:
error C2475: 'std::basic_stringstream<_Elem,_Traits,_Alloc>::str' : forming a pointer-to-member requires explicit use of the address-of operator ('&') and a qualified name
with
[
_Elem=char,
_Traits=std::char_traits<char>,
_Alloc=std::allocator<char>
]
請問某人請解釋什麼是錯的?
也許是更好的,如果你通過了'引用stringstream'。 – 2010-12-15 08:28:55