Я разрабатываю приложение на С++, которое, между прочим, время от времени выполняет несколько скриптов. Приложение должно быть эффективным и предпочтительно независимым от платформы.
Проблема заключается, однако: есть ли причина, по которой нельзя использовать вызов system()
для запуска сценариев и использовать, например, объекты POSIX? Обсуждение вопроса, которое я видел до сих пор, обычно сводится к следующему:
-
system()
менее гибкий. (Хорошо со мной) - Он не контролирует выполняемую команду. (Хорошо со мной, мне просто нужно вернуть значение из script)
- Это не совсем независимая от платформы. (Теперь это будет проблемой. Мне бы очень хотелось увидеть пример, где он ведет себя по-разному на разных платформах).
- Это проблема безопасности. (Опять же, это будет проблемой. Может ли кто-нибудь представить пример потенциальной проблемы безопасности с
system()
?) - Любые другие проблемы?