我使用Qt Creator,我的C ++代码中有一个奇怪的错误。这段代码
#include <stdlib.h>
std::wstring readFile(const std::wstring& f) {
//try and open the file
std::wifstream file(TL::wToString(f).c_str());
if (!file)
throw BadFileLoad(f, L"Impossible to write in the file "+f);
//reads the content
std::wostringstream oss;
oss << file.rdbuf();
return oss.str();
}
发出此错误:
C2065:'oss'未声明的标识符
但实际上我在第一行宣布了!!怎么了?谢谢!
答案 0 :(得分:1)
您缺少一些包含文件。尝试以下几点:
#include <string> // std::wstring
#include <sstream> // std::wostringstream
#include <fstream> // std::wifstream
答案 1 :(得分:1)
您需要包含具有类std::wostringstream
#include <sstream>
答案 2 :(得分:0)
我发现错误,我评论此行抛出BadFileLoad(f,L“无法在文件中写入”+ f);而不是如果(!文件)...对不起家伙,是一个愚蠢的问题!谢谢你的时间!