Python 的 exec() 函数的 C++ 版本
c++ version of python's exec() functions
目标:使用某种类似于 Python 中exec()
函数的函数执行一串 C(++( 代码。
Python 中的示例:
exec('print("hello world")')
#out:
#hello world
问题:
Python 中有 C++ 版本的 exec 吗?
但是,python中有C ++版本的exec吗?
你想从字符串中执行 C 语言语句!所以这在 C 中是不可能的。
为什么
因为C是编译语言,所以程序先编译后执行。 它可以在Python中作为其解释语言,意味着程序由 运行时的实时编译器。 希望这会有所帮助。
好吧,技术上,你(也许(可以。但这几乎不是一个合理的努力,还有其他脚本语言可以集成到C++中。例如Lua。只是想一想,如果你有一个方法int excuteCode(std::string code)
- 将该字符串复制到将其包装在某个函数中的模板中。以下是此类模板的想法:
int userFunc()
{
%code%
}
- >将模板写入文件
- 从该文件构建一个动态库(例如 Windows 上的.dll((通过
system
或特定于操作系统的方法调用编译器和链接器( - 将动态库加载到正在运行的程序中(同样,特定于操作系统的方法(
- 加载所需的方法
userFunc
并执行它。
#include <iostream>
int main(void) {
system("python -c "print('hello world')"");
return 0;
}
对于系统命令...?
相关文章:
- 为cl.exe(Visual Studio代码)指定命令行C++版本
- 导入库可以跨dll版本工作吗
- 在调用FreeLibrary后,释放动态链接到具有相同版本的CRT堆的DLL的内存
- 在clang++预处理器中确定gcc工具链版本
- 码头化的C++应用程序是否向后兼容早期的内核版本
- 不同的Visual Studio版本中缺少.dll
- 用符号版本替换对函数的所有调用
- luaL_dofile在已知良好的字节码上失败,可以使用未编译的版本
- 正在解码MSVC 32位版本的程序集(作业).没有手术做什么
- 我需要分发哪些版本的可再分发文件
- CV_OCL_RUN宏如何在OpenCV(版本3.4.5)的goodFeaturesToTrack实现中工作?
- 在运行时读取 libstdc++ 版本
- 如何声明一个可以在整个程序中使用的全局 2d 3d 4d .. 数组(堆版本)变量?
- FindPackageHandleStandardArgs.cmake:137 的 CMake 错误(消息):找不到 Boost (缺少:正则表达式)(找到合适的版本"1.72.0",
- Vulkan SDK 版本 1.1.85.0 在 Kubuntu 18.10 上链接
- 如何正确实现与基类不同的版本?
- 从预处理器获取 Windows 版本(C++ Win32)
- 表达式 SFINAE:如何根据类型是否包含具有一个或多个参数的函数来选择模板版本
- 如何在C++中将 Python 字符串转换为其转义版本?
- Qt版本应该在其他计算机上运行吗?