在TSL语言中,根据函数的可使用范围,将函数分成主函数和子函数两种。
主函数是指在一个函数定义体中与函数定义体同名的函数;子函数是指在一个函数定义体中声明的,与函数定义体不同名的函数;
主函数的可使用范围是全局的,它可以在任何的其它函数中被调用;但子函数的可使用范围是局部的,它只能被与其处在同一个函数定义体中的其它函数所调用。
如果一个函数仅需要为某个函数所调用,或者其公用性很低的时候,在编程时可以考虑把它作为子函数放在同一个函数定义体中声明。
目前在TSL语言中,已经提供了许多的系统函数,它们全部是主函数。你可以在编写自己的用户函数时直接调用。
例如:以下函数定义体内含有两个函数,其中SubFunction称为函数体TestMultiFunc的子函数,而TestMultiFunc为主函数,用于计算1到100的平方和。
Function TestMultiFunc();
Begin
Result:=0;
For i:=1 to 100 do
Result:=Result+SubFunction(i);
Return result;
End;
Function SubFunction(A);
Begin
Return A*A;
End;