2012-07-17 91 views
1

有没有人知道如何编译您的程序已运行时编写的C++代码?编译并运行C++代码运行时

后来我想运行该代码。

我想这样做是因为我试图制作一个游戏来教你编程,所以用户在游戏运行和测试时必须编写代码。

感谢您的任何帮助

+0

你需要为多个程序最好的语言!另外 - 使用基于网络的编译(谷歌for *键盘*等) – 2012-07-17 13:02:04

+0

你的起点是什么?你有什么最初的想法?到目前为止你研究了什么? – 2012-07-17 13:02:24

+0

一个简单的方法是将文本保存到文件中,然后在命令行执行编译器命令进行编译,然后以相同的方式运行生成的可执行文件 – SingerOfTheFall 2012-07-17 13:03:10

回答

1

您必须调用编译器来编译并链接用户输入的代码。必须将其制作为可执行文件,然后再从您创建的另一个进程运行,或者作为您动态加载和调用的库。

这是如何完成的POSIX平台(如Linux和OSX)和Windows不同。

3

如果您选择的是嵌入式设计的语言,比如LUA或python,您会更容易。对于C++来说,你必须去做一些非常笨拙和脆弱的事情,比如调用一个外部编译器(这在运送游戏时也是物流的噩梦),或者像在游戏中集成编译器一样复杂(可能用llvm组件,但是......)

而且,“示教编程”,C++可能不是:)

+0

我尝试使用python执行此操作,但遇到memry出错访问和我还没有找到任何解决方案,否则我会使用它。 – schmru 2012-07-17 14:08:09