python 的 exec() 函数的 c++ 版本
c++ version of python's exec() functions
objective:
使用类似于 python.
中的 exec()
函数的某种函数执行一串 c(++) 代码
python中的示例:
exec('print("hello world")')
#out:
#hello world
问题:
python 中是否有 c++ 版本的 exec?
#include <iostream>
int main(void) {
system("python -c \"print('hello world')\"");
return 0;
}
对于系统命令...?
但是,python中是否有 exec 的 c++ 版本?
您想从字符串执行 C 语言语句!所以 c.
是不可能的
为什么
因为c是编译型语言,程序先编译后执行。
它可能在 python 作为它的解释语言,意味着程序是由
运行时的即时编译器。
希望这会有所帮助。
嗯,技术上,你(也许)可以。但这几乎不是一种合理的努力,还有其他脚本语言可以集成到 C++ 中。例如 Lua。想想看,如果你有一个方法 int excuteCode(std::string code)
,下面的方法可能会起作用
- 将该字符串复制到模板中,将其包装在某个函数中。以下是这样一个模板的想法:
int userFunc()
{
%code%
}
- 将模板写入文件
- 从该文件构建动态库(例如 windows 上的 .dll)(通过
system
或 OS 特定方法调用编译器和链接器)
- 将动态库加载到您的 运行 程序中(同样,OS 特定方法)
- 加载所需的方法
userFunc
并执行它。
objective: 使用类似于 python.
中的exec()
函数的某种函数执行一串 c(++) 代码
python中的示例:
exec('print("hello world")')
#out:
#hello world
问题:
python 中是否有 c++ 版本的 exec?
#include <iostream>
int main(void) {
system("python -c \"print('hello world')\"");
return 0;
}
对于系统命令...?
但是,python中是否有 exec 的 c++ 版本?
您想从字符串执行 C 语言语句!所以 c.
是不可能的为什么
因为c是编译型语言,程序先编译后执行。 它可能在 python 作为它的解释语言,意味着程序是由 运行时的即时编译器。 希望这会有所帮助。
嗯,技术上,你(也许)可以。但这几乎不是一种合理的努力,还有其他脚本语言可以集成到 C++ 中。例如 Lua。想想看,如果你有一个方法 int excuteCode(std::string code)
- 将该字符串复制到模板中,将其包装在某个函数中。以下是这样一个模板的想法:
int userFunc()
{
%code%
}
- 将模板写入文件
- 从该文件构建动态库(例如 windows 上的 .dll)(通过
system
或 OS 特定方法调用编译器和链接器) - 将动态库加载到您的 运行 程序中(同样,OS 特定方法)
- 加载所需的方法
userFunc
并执行它。