数学建模社区-数学中国
标题:
Lu动态生成函数的效率
[打印本页]
作者:
forcal
时间:
2011-10-30 20:39
标题:
Lu动态生成函数的效率
在脚本中动态生成函数并调用该函数是脚本的基本特色之一,Lu模块化编译运行库MLu提供了该功能。MLu可对一段包含多个函数及模块的字符串源程序进行动态编译,以下代码测试了其运行效率。
mvar:
- X! c$ M+ u. g+ m& S! ~, z0 q
main(:a)=
! d) N8 }+ I) u( _/ f
t0=clock(), s=0, i=0,
* B1 V: R m0 t4 K/ l$ N1 h: f
while{++i<=10000,
8 c8 S' W# J8 |5 M( b1 _ A
//动态编译模块,该模块有2个函数,f为私有函数,ff为全局函数
9 g; l: n7 N' q6 c. }+ u3 x u% d% z3 M
ComModule["f(x)=x+1; :::ff(x,y)=f(x)+y;",0,&me,0,0],
9 p" F" L! O% R5 D
a=HFor("ff"), //获得函数ff的句柄
1 o# _" H) f2 D9 _
s=s+a[1,1], //动态调用函数ff
/ k: r: h/ }8 @6 ^2 b" l0 m
delete[me] //立即销毁模块
2 v: c& v3 A0 ]. \' o) k$ N
},
1 ?/ }: K9 ]4 P+ Q, u. ~, r. V
o{"s=",s," time=",[clock()-t0]/1000.,"秒。"};
复制代码
结果:
s=30000 time=0.625秒。
复制代码
作者:
ehi28
时间:
2011-12-20 02:04
嗯,不错,支持一下.
5 D0 l& j+ U$ y4 W
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5