C++ fstream 混淆

C++ fstream confusion

我有一个程序,在整个过程中多次使用 fstream 保存到文件。它在 运行 在 Microsoft vs 中完美运行,但是当我编译一个版本并将 .exe 带到我的桌面时,它不会写入那里的任何文件。

ofstream save;
save.open("Data\options.scav");
/*Write stuff to file*/

这在 visual studio 中工作正常,但如果我将它放到我的桌面上,甚至为它创建数据文件夹,它也不会写入。任何帮助将不胜感激。

您不能写入尚未创建的路径。

这样做:

// check Data folder exists
ofstream save;
save.open("Data\options.scav");

请注意,出于可移植性原因,您也可以这样做(在 Windows 或 Unix 上):

// check Data folder exists
ofstream save;
save.open("Data/options.scav");