为什么我们需要像Lua这样的嵌入式编程语言?
使用嵌入式编程语言的典型用例是什么?我是否正确理解这种语言应该嵌入到某些程序环境中,并且应该能够从那里执行?
解决方法
既然你把问题标记为“Lua”,我会在这个语言的上下文中给你一个答案.
介绍 Lua是用C编写的(与C89标准几乎完全兼容;如果需要,可以使用编译时交换机轻松禁用不兼容的功能),并且设计成可以轻松地与C代码集成.在Lua的背景下,“综合”是指两个不同但相关的事物: >您可以轻松地编写可用作Lua代码库的C代码.通过将C代码静态或动态链接到Lua引擎的代码来实现集成.然后可以使用Lua require函数在Lua代码中引用链接库. 注意:这可以通过更多的努力,也可以用C应用程序完成. 嵌入Lua发动机的优点 如果您的C应用程序嵌入Lua许多(如果不是大多数)操作可以委派给Lua引擎,即使用C-API函数编写代码,或者更好的是Lua代码. Lua代码可以作为C字符串嵌入到C代码中,或作为外部Lua脚本存储. 使用Lua代码实现部分代码逻辑有几个优点: > Lua比C简单(不太棘手)学习和使用,而且更高级.它支持强大的抽象,例如函数闭包和对象定向(以特殊的方式使用Lua表和metamethods). >采用强大的基于文本的元编程技术,其中Lua代码可以生成其他Lua代码并即时执行; > Lua引擎具有非常小的内存占用(几百kB),打包强大的功能.使用非常少的C代码行和一堆Lua文件,您可以创建一个完整的应用程序,否则将需要数千个C代码行. standard Lua standalone interpreter可以看作是将Lua嵌入到C应用程序中的一个例子! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |