0
我使用的是一些相當簡單的C++代碼來發出聲音文件的內容爲std::string
:錯誤:無法在簡單的std :: string文件slurper轉換
// Read contents of file given to a std::string.
std::string f = "main.js";
std::ifstream ifs(f.c_str());
std::stringstream sstr;
sstr << ifs.rdbuf();
std::string code = sstr.str();
但是,當我編譯,我得到這個錯誤:
error: could not convert ‘((*(const std::allocator<char>*)(& std::allocator<char>())),
(operator new(4u), (<statement>, ((std::string*)<anonymous>))))’ from ‘std::string*
{aka std::basic_string<char>*}’ to ‘std::string {aka std::basic_string<char>}’
我知道這可能是一個簡單的錯誤,但我仍然非常學習C++。應該只是一個簡單的類型混合或什麼的。
根據要求,這裏是我想要做的一些示例代碼:
std::string Slurp(std::string f)
{
std::ifstream ifs(f.c_str());
std::stringstream sstr;
sstr << ifs.rdbuf();
std::string code = sstr.str();
return code;
}
感謝。
'F'實際上代表了'的std :: string'這是一個參數傳遞給我的啜食代碼的功能。我仍然用'c_str()'得到錯誤。 – beakr
您是否仍然收到您發佈的相同錯誤? – Kunal
是的,發佈確切的錯誤。 – beakr