我是 C++ 的新手。我正在编写一个 Python 脚本来编译和调用 C++ 程序。代码:
system( "g++ -std=c++11 /home/my_program.cpp" )
system( "/home/a.out arg1" )
这似乎可以很好地执行 C++ 程序。
但是,当我对 C++ 程序进行更改并尝试运行我的 pythons 脚本时,更改似乎没有生效。 C++ 代码的输出仍然与更改前相同。
是否可以在 Python 中编译 C++ 代码?
最佳答案
该二进制文件将放在工作目录中,而不是 C++ 文件旁边。向 g++ 添加一个 -o
参数以确保它写入同一个地方。当我自己使用输出选项尝试您的示例时,它工作得很好。
要对您的问题进行更直接的解释,请查看 cppyy: https://cppyy.readthedocs.io/en/latest/
import cppyy
cppyy.cppdef(r'void say_hello() { std::cout << "Hello!\n"; }');
cppyy.gbl.say_hello()
关于python - 你能在 Python 脚本中编译 C++ 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59277739/