我在C++中创建了一个头文件,以便将内容记录到一个文件中,但当我尝试这样做时发生了错误。
我已经尝试了ofstream、fstream,并且我还尝试了独立于对象声明打开文件。我试着去掉这个变量,只把我想要的实际文件名放进去(所以我把logging(“fileName.txt”)代替了logging( filename ) )
void writeLog(){
using namespace std;
ofstream logging(fileName);
if(!logging){
cerr << "Error opening log file " << fileName << ". Logs are not being recorded\n";
isError = true;
}
我希望代码创建一个名为logging的ofstream对象,该对象创建一个带有指定文件名的文件,但我得到的却是错误:
对于调用> 'std::basic_fstream::basic_fstream(std::__cxx11::string&)'|,
没有匹配的函数
发布于 2019-04-21 23:29:31
正如@drescherjm的评论所说:您的编译器太旧了,要求文件名为char*
而不是std::string
。在这种情况下,您需要用fileName.c_str()
替换fileName
https://stackoverflow.com/questions/55783968
复制相似问题