C++ 有没有办法编译C++;运行时的代码?
我已经为JavaScript编写了一个复杂的数学库,它具有从人类可读的数学表达式字符串生成函数的功能。是否有一种方法可以在C++中实现运行时生成的函数?< p>你可以执行C++编译器,让它生成一个共享库并加载到程序中运行C++代码。请注意,详细信息取决于您使用的平台,因为Windows和POSIX有不同的机制来加载共享库。的答案是正确的,我建议您查看该工具 有一个基本的(不是很有用的)教程。还有一个关于写作的广泛教程。您可以在C++应用程序中加载生成的库。C++ 有没有办法编译C++;运行时的代码?,c++,compilation,runtime,C++,Compilation,Runtime,我已经为JavaScript编写了一个复杂的数学库,它具有从人类可读的数学表达式字符串生成函数的功能。是否有一种方法可以在C++中实现运行时生成的函数?< p>你可以执行C++编译器,让它生成一个共享库并加载到程序中运行C++代码。请注意,详细信息取决于您使用的平台,因为Windows和POSIX有不同的机制来加载共享库。的答案是正确的,我建议您查看该工具 有一个基本的(不是很有用的)教程。还有一个关于写作的广泛教程。您可以在C++应用程序中加载生成的库。 除非您有一个性能关键的组件,否则您可以
除非您有一个性能关键的组件,否则您可以使用(注意:我决不隶属于它或作者)的“编译语言方式”是定义语法、构建解析器、AST(抽象语法树)并解释/编译它。当你这样做的时候,你基本上是在编写你自己的编译器/解释器,这很有趣。如果你想让它工作起来,你可以看看Boost Sovior。< /P>请把它限制为C或C++,否则它有点宽。“FUZxxl,它是固定的。你可以调用编译器;说真的,我认为LLVM的家伙在某个时候做了一些C++ JIT工作,你可以看看(我可能记得错了)。还有一些程序可以用来编译和运行C代码,但是它不能做C++,这就是为什么我要澄清的原因。你可以实现一个C++解释器(很多工作)。。谢谢你提供的有用链接,我将权衡我的选择。是的,组件将对性能至关重要。我之所以要移植这个库,是因为我想提高分形生成程序的速度。谢谢你的建议,但不幸的是,我要编译的字符串要到运行时才能知道,因为我希望它们来自用户输入。我认为翻译的性能不足以满足我的需要。