Project1

标题: 【小白】问一下,解释型的编程语言都可以随时改代码吗? [打印本页]

作者: 彼岸此岸    时间: 2013-5-22 07:35
标题: 【小白】问一下,解释型的编程语言都可以随时改代码吗?
以前接触过一点点java可惜没学会,但是我知道java是解释型的编程语言,需要编译成.class每次运行就是解释运行,和RGSS不一样的吧,java不容易改代码

我的表达能力很弱,希望各位大神谅解。我觉得凡是脚本一类的东西都是像某些游戏脚本那样以改代码的方式设置运行的,看下图,这是游戏外挂的脚本,可以随时改代码,这是什么语言的呢?



作者: feizhaodan    时间: 2013-5-22 21:07
渣百度不允许外链。
然后我想我可能理解了你的问题,Ruby有一个方法叫eval(str),str是任意Ruby脚本,eval就是在运行时编译脚本内容,并且运行它。

至于其他语言,我个人只学过C++和C#(C#还没写过代码),所以没法说,抱歉。

然后这贴我移动到讨论区内,问题不因该发在原创发布区,但这个问题也不属于任意工具。
作者: 晴兰    时间: 2013-5-23 00:38
提示: 作者被禁止或删除 内容自动屏蔽
作者: 爆发的妞    时间: 2013-5-23 09:54
你说的是java的内存的动态编译执行的功能。
就是可以对一个文本文件,读到内存,然后编译, 执行。
当然这个文本文件里面是一个类。
参考:http://www.oschina.net/code/snippet_220184_8607
rm就是类似于这样做的,动态编译。
然后每一个插入脚本的位置,其实就是一个 脚本对象的方法名, 调用执行就ok了。

不过我个人觉得, 还有一个方法比较简单(如果脚本不多的话,没有分层的概念),
工具直接生成一个.java类似的文件, 然后系统就自动编译了。 调用的时候, 直接
调用就ok了。 优点是简单, 缺点是脚本过多的时候, 类较大,脚本调用效率应该
会低点。




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1