Вопрос

Я использую Eclipse в качестве IDE для программирования C ++. В моей системе у меня есть сетевой домашний каталог и раздел данных. Я хочу, чтобы проект хранился в Home Directory (который подтверждается нашим администратором), но расчеты должны быть сделаны в разделе данных. Как я могу это сделать?

Я уже выяснил, как изменить местоположение сборки под артефактами сборки, но файлы, которые я генерирует в коде C ++ (например, fstream f; f.open("filename");) хранятся в каталоге проекта в моей домашней папке.

Одна возможность состоит в том, чтобы построить из затмения, а затем запустить двоичный файл из консоли. Но это не так хорошо, как просто нажать на бег.

Я надеюсь, что кто-то может мне помочь.

Это было полезно?

Решение

Вам нужно найти что -то, что называется «работник -дир/путь» или аналогично. (Понятия не имею, как называется в Eclipse)

Обратите внимание, что это также может повлиять на то, как загружаются динамические библиотеки.

Другой вариант состоит в том, чтобы иметь опцию конфигурации в вашей программе и обработать код настройки путей в соответствии с линиями (непроверенный! Обратитесь как псевдокод!)

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

Другие советы

Вы открываете файлы в текущем рабочем каталоге. Вы можете использовать абсолютные пути при указании имени файла, либо вы можете сделать chdir Перед созданием/открытием файлов. Вы также должны избегать жестких имен файлов в коде. Вместо этого вы можете указать имена файлов, используя файлы конфигурации, переменные среды, аргументы командной строки и т. Д. Обратите внимание, что вы также можете указать дополнительные аргументы командной строки в Eclipse, которые будут переданы вашему исполняемому файлу при отладке.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top