易语言-继续公开引用模块指定子程序

时间:2024-07-15 12:44:20
【文件属性】:

文件名称:易语言-继续公开引用模块指定子程序

文件大小:22KB

文件格式:ZIP

更新时间:2024-07-15 12:44:20

易语言例程

其实是很简单的东西。文件结构分析,东灿和曙光都帮我们做了,我只是利用他们的研究成果做一个有用的程序而已。 感谢东灿、曙光! 易模块文件 的分析参考了 东灿 的 易模块分析 和 曙光 的 “易语言文件分析软件及源码 2014年11月5日” 的相关代码 用途: 我们有时希望继续公开引用的模块的指定子程序 虽然易语言提供了继续公开的功能,但无法指定子程序,只能继续公开某一个模块的全部子程序 本程序通过修改易模块文件的方式实现了继续公开指定子程序 由于需求是使用与原来的模块的子程序名称相同的名称公开 因此手动添加一个中间子程序,将造成名称冲突的问题 而且通过一个中间子程序调用,会影响效率 同时一些特殊代码(如使用汇编实现的 取This指针)不允许存在中间子程序 使用方法: 假设需要继续公开的来自模块的名称为“Test”的子程序(以下将这个模块称作提供者) 在引用这个模块的模块(以下称作引用者)中添加一个子程序,名称为“_继续公开_Test”(需要公开),参数与需要与提供者中的“Test”子程序相同,注释随便。当处理后,继续公开的子程序的注释将修改成引用者的“_继续公开_Test”子程序的注释。 引用者的“_继续公开_Test”子程序中的代码应该为:“ Test (参数......) ”或者为“ 返回 (Test(参数......)) ”不能为其他形式 然后,使用本程序处理,即可完成需求 处理后的模块是直接公开的提供者的函数,因此调用时不会经过引用者中的“_继续公开_Test”中转 “_继续公开_Test”会在处理过程中隐藏 之所以注释和参数名称使用引用者的“_继续公开_Test”子程序的相关信息,是因为,提供者的子程序在编译引用者的时候并没有公开,因此注释和参数名称会在编译引用者的时候删除。


【文件预览】:
继续公开引用模块指定子程序
----继续公开引用模块指定子程序.e(50KB)
----例程()
--------提供者.e(3KB)
--------引用者(引用提供者模块并继续公开部分子程序).e(4KB)
--------处理前 - 引用者(引用提供者模块并继续公开部分子程序).ec(3KB)
--------提供者.ec(2KB)
--------调用测试.e(3KB)
--------处理后 - 引用者(引用提供者模块并继续公开部分子程序).ec(3KB)

网友评论