| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > перекомпиляция |
| Автор: qwerty1122 6.5.2014, 19:13 |
| привет,подскажите,как в программе можно вызвать cmd файл?т.е дело обстоит так,подключаем пустой файл,в ходе выполнения программы вызывается парсер и записывает в этот пустой файл текст и теперь необходимо перекомпилить проект чтобы этот перезаписанный файлик цепанулся заново и продолжилось выполнение программы |
| Автор: NoviceF 7.5.2014, 09:04 |
| Насколько мне известно, средствами c++ - никак. Это уже из области метапрограммирования, вероятно, нужен сторониий фреймворк. |
| Автор: bsa 7.5.2014, 13:42 |
| qwerty1122, если я тебя понял правильно, то так никто не делает. Или ты пишешь/берешь готовый парсер интерпретируемого языка (Python, LUA) или используешь плагины (т.е. скомпилированные библиотеки, расширяющие функциональность программы) |
| Автор: qwerty1122 7.5.2014, 17:40 |
| раз нельзя вызвать cmd файл...то мож есть какая-нибудь команда которая позволит перечисленные файлы просто перекомпилировать и продолжить выполнение программы? |
| Автор: Static 7.5.2014, 18:02 |
| qwerty1122, вызвать cmd (да и вобще, что угодно запустить из-под ОС) можно. Смотреть в сторону system()/CreateProcess/и т.п. А говорят тебе, что ты, скорее всего, что-то делаешь неправильно, и что для подобных задач обычно используют скриптовые языки. |
| Автор: bsa 8.5.2014, 12:15 |
| NoviceF, плагины ;-) |
| Автор: xvr 8.5.2014, 13:39 | ||
Это делает отладчик VS в режиме edit-and-continue. Сделать это вне VS весьма и весьма проблематично. Кроме того, это даже внутри VS работает через раз. Можно runtime откомпилировать файлы в динамическую библиотеку (*.dll в Win или *.so в Linux) и после этого загрузить ее к себе. Но этот процесс полностью зависит от ОС и компилятора. |