Seraph 4.0版本以后的新的脚本示例_seraphzone教程-查字典教程网
Seraph 4.0版本以后的新的脚本示例
Seraph 4.0版本以后的新的脚本示例
发布时间:2016-12-28 来源:查字典编辑
摘要:4.0中,最重要的几大改如下:-允许数组相互直接赋值,并允许数组成为函数的参数。-允许在函数中调用后面声明的函数,即函数声明的先后与调用关系...

4.0中,最重要的几大改如下:

- 允许数组相互直接赋值,并允许数组成为函数的参数。

- 允许在函数中调用后面声明的函数,即函数声明的先后与调用关系无关。使间接递归成为可能。

- 允许在定义了函数之后的脚本位置定义全局变量。这样USE子脚本中也可以声明全局变量了,使其功能可以更灵活。

以下分别对这几大改进举例说明

允许数组相互直接赋值,并允许数组成为函数的参数。

例1,数组相互直接赋值

function main

dim arr1[10]

arr1[1]=5

#将数组arr1整体COPY至arr2

arr2=arr1

#输出arr2[1]的值,应为5

Print(arr2[1])

end function

例2,数组作为参数

function fx(arr1, byref arr2)

Print(arr1[1])

#改变byref参数arr2中的某个元素的值

arr2[1]=10

end function

function main

dim arr1[10],arr2[10]

arr1[1]=5

fx(arr1, arr2)

#输出arr2[1]值。此值在fx函数中被改变,应输出10

Print(arr2[1])

end function

允许在函数中调用后面声明的函数,即函数声明的先后与调用关系无关。

function main

fx()

end function

#函数fx声明在main函数之后,同样可以被调用

function fx

Print("Hello")

end function

允许在定义了函数之后的脚本位置定义全局变量。

dim a

function fx

#a与b都是全局变量。即使b在后面才定义,也不影响它被前面声明的函数所调用

Print(a)

Print(b)

end function

dim b

function main

a=1

b=2

fx()

end function

技巧

利用这些新改进,在脚本中用USE来加载其他子脚本变的更强大。

我们知道,在脚本的任何位置,我们可以用

#USE 脚本名

来加载一个脚本的内容到当前位置。

之前由于dim定义只允许放在所有的函数定义之前,这使得在子脚本中放一些需要使用自定义的全局变量的函数变的很困难,特别是要USE多个这样的子脚本的时候。在4.0版本以后,这样的问题就解决了。

例:

主脚本内容:

function fx

end function

#use utils.ser

function main

#访问在子脚本中定义的全局变量

a=1

#访问在子脚本中定义的函数

myPrint()

end function

子脚本utils.ser内容:

dim a

function myPrint

Print(a)

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新seraphzone学习
    热门seraphzone学习
    脚本专栏子分类