我很惭愧,因为无法解决这个问题,但我无法完成这项工作。我有这个简短的测试:ifstream无法找到文件
std::string archnom = "../data/uniform.txt";
ifstream archin(archnom.c_str());
ASSERT(archin.good());
断言是抛出错误。由于某种原因,它没有找到uniform.txt
文件。该项目的结构:
我已经试图改变archnom没有成功如下:
std::string archnom = "/data/uniform.txt";
std::string archnom = "./data/uniform.txt";
std::string archnom = "../data/uniform.txt";
std::string archnom = "data/uniform.txt";
什么这里的问题是什么?
不要紧,你的程序文件。当你执行它时,当前的工作目录是什么? – melpomene
问题是你需要确定什么是你的进程的当前目录。与所有当代流行的点对点GUI IDE相比,这是利用cc/gcc的shell提示来学习破解C++的“老派”的优势之一:无论如何,您绝对不会有任何疑问,并且你永远不会对你当前的目录是什么以及所有文件的位置感到困惑。 –
@melpomene它是项目的根源。我刚刚编辑过 –