![]() |
1
4
Lazarus的默认安装附带一组通用标题为“Pascal脚本”的组件,可用于实现脚本引擎和调试器-请参阅 http://wiki.freepascal.org/Category:Pascal_Script 和 http://wiki.freepascal.org/Pascal_Script_Examples 脚本引擎可以编译(到字节码)并执行用对象Pascal方言编写的脚本,该方言与Delphi实现的对象Pascal相近,但不完全相同。该软件包在所提供的许多Lazarus/FPC单元周围带有代码包装器,这些单元实现了与Delphi的许多组件等效的组件。 简而言之,您应该发现,您可以使用Pascal脚本编写和动态执行对象Pascal代码,这相当于您可以在FPC中编写和编译的大部分代码。正如您将从第二个链接中的代码示例中收集到的一样,Pascal脚本引擎允许您添加在自己的Lazarus/FPC代码中定义的自定义函数,并使您的表单和类可以访问Pascal脚本并可由其编写脚本。 如果您需要一个脚本引擎来实现另一种语言,那么可以使用第三方库来帮助您实现这一点。大多数是为Delphi编写的,但应该很容易翻译成FPC+Lazarus。示例包括 TP Lex/Yacc: http://www.musikwissenschaft.uni-mainz.de/~ag/tply/ Delphi编译器生成器: http://www.soft-gems.net/index.php/tools/delphi-compiler-generator 因此,简而言之,如果您想做的事情可以用Lazarus/FPC代码表示,那么很有可能用Pascal脚本代码执行。如果您需要另一种脚本语言的引擎,TP-Lex/Yacc和DCG将允许您编写自己的脚本语言,但请注意它将是 大量 比使用Pascal脚本组件需要更多的工作。 顺便说一句,我不知道你是否对Linux感兴趣,但Linux版本的Lazarus/FPC也附带了Pascal脚本组件。 |
![]() |
ZoranSRB17 · 读取文本文件并从中构造矩阵,Pascal 7 年前 |
|
Zoran Mladenovski · 字节集,a和b的值是多少 7 年前 |
![]() |
Sean · Lazarus表单按代码调整大小 7 年前 |
|
user1175743 · TRichMemo-LoadRichText不工作 11 年前 |
![]() |
Jeff · 用于跨平台GUI开发的最佳技术是什么?[已关闭] 12 年前 |