2012-01-10 142 views
0

我使用Eclipse作为C++编程的IDE。在我的系统上,我有一个网络主目录和一个数据分区。 我希望项目存储在主目录(由我们的管理员备份),但计算应该在数据分区上完成。 我该怎么做?Eclipse中的C++文件输出目录

我已经想通了如何构建下的文物更改构建位置,但我在我的C生成文件++代码(例如fstream f; f.open("filename");)存储在我的主文件夹的项目目录。

一种可能性是从Eclipse构建,然后从控制台运行二进制文件。但是,这不像点击运行那么好。

我希望有人能帮助我。

+0

只是一个建议,直到有人给你“正确”的答案:改变传递给'f.open'的路径(例如'f.open(“D:\ data \ filename”)') – 2012-01-10 11:17:35

回答

0

你需要找到一个叫做“工作目录/路径”或类似的东西。 (不知道Eclipse的名字是什么)

但是请注意,这也会影响动态库的加载方式。

的另一种选择是在你的程序中的配置选项,让你的代码处理路径的设定沿着线(未经测试!当作伪代码!)

f.open((path/filename).c_str());    // using boost::filesystem 
f.open((path + PATH_SEP + filename).c_str()); // using std::string 
0

您正在打开当前工作目录中的文件。您可以在指定文件名时使用绝对路径,也可以在创建/打开文件之前执行chdir。您还应该避免在代码中对文件名进行硬编码。相反,您可以使用配置文件,环境变量,命令行参数等来指定文件名。请注意,在调试时,您还可以在Eclipse中指定其他命令行参数以传递给可执行文件。