将Python变量传递给我的C++;脚本和g++;调用 在Python脚本中,我使用运行C++脚本 os.system('g++ -std=c++0x mutualcepepe.cpp -o mutualout') 它是有效的,但是我想把我的Python可更改(用户定义它的值)变量传递给C++在这个命令行中,例如变量: threshold = 1.33 (它也可以是字符串,我可以把它转换成C++脚本中的浮点)

将Python变量传递给我的C++;脚本和g++;调用 在Python脚本中,我使用运行C++脚本 os.system('g++ -std=c++0x mutualcepepe.cpp -o mutualout') 它是有效的,但是我想把我的Python可更改(用户定义它的值)变量传递给C++在这个命令行中,例如变量: threshold = 1.33 (它也可以是字符串,我可以把它转换成C++脚本中的浮点),python,c++,gcc,g++,Python,C++,Gcc,G++,我甚至试图传递准确的值: os.system('g++ -std=c++0x mutualcepepe.cpp 1.33 -o mutualout') 或: 但我还是得到了同样的错误: g++: error: 1.33 (or threshold): No such file or directory 我在网上寻找答案,但没有找到答案 我有另一个想法,只把这个值放在其他文本文件中,我将打开它并获取值,但我仍然想更优雅地处理这个问题 是否有一种方法可以将g++不考虑的变量作为目录传递?您可以使

我甚至试图传递准确的值:

os.system('g++ -std=c++0x mutualcepepe.cpp 1.33 -o mutualout')
或:

但我还是得到了同样的错误:

g++: error: 1.33 (or threshold): No such file or directory
我在网上寻找答案,但没有找到答案

我有另一个想法,只把这个值放在其他文本文件中,我将打开它并获取值,但我仍然想更优雅地处理这个问题


是否有一种方法可以将
g++
不考虑的变量作为目录传递?

您可以使用
-D
选项添加宏:

g++ -D "threshold = 1.33" ...

然后您可以在
mutualcepe.cpp

中引用宏值
threshold
,通过猜测编程是行不通的。好吧,但是treshold值是可以更改的(用户定义它的值),它不会是静态的。您的意思不是:
os.system('g++-D“threshold='+str(threshold)+'“…”)
?非常感谢@Sébastien Guarnay,终于成功了!:)
g++ -D "threshold = 1.33" ...