我的c ++代码已成长为指数级.我有很多变量(大多数是布尔值),每次运行我的代码时都需要更改(不同的运行条件).我使用main( int argc, char* argv[])过去的函数的参数命令行输入完成了这个.
由于这种方法已经成为累赘(I有18种不同的运行条件下,因此,18个不同的参数:-(),我想移动到与Python接口(如果需要的话击).理想情况下,我想编码Python脚本,其中我设置数据成员的值,然后运行代码.
有没有人有任何可以帮助我的指针/信息?更好的是我可以查找一个简单的编码示例或URL.
从原始问题编辑:
对不起,我不认为我对我的问题很清楚.我不想main( int argc, char* argv[])在c ++中使用该功能.而不是在命令行上设置变量.我可以使用python来声明和初始化我的c ++代码中的数据成员吗?
再次感谢迈克
使用subprocess从python执行程序.
import subprocess as sp
import shlex
def run(cmdline):
process = sp.Popen(shlex.split(cmdline), stdout=sp.PIPE, stderr=sp.PIPE)
output, err = process.communicate()
retcode = process.poll()
return retcode, output, err
run('./a.out '+arg1+' '+arg2+' '+...)
Run Code Online (Sandbox Code Playgroud)
C/C++和Python之间的接口有大量文档记录,有几种不同的方法.但是,如果您只是设置值,那么使用Python可能会有点过分,因为Python更倾向于通过将其转移到解释器来定制流程中的大型操作.
我个人建议研究"ini"文件方法,传统上或使用XML,甚至像Lua这样的轻量级脚本语言.
| 归档时间: |
|
| 查看次数: |
4612 次 |
| 最近记录: |