前言这篇文章主要是记录在GScript中实现递归调用时遇到的坑。类似的问题在中文网上很难找到相关内容,所以还是有必要记录一下。在开始之前,先简单介绍一下本次更新的GScriptv0.0.9的内容:支持可变参数优化append函数语义优化编译报错信息最后一个是支持递归调用先看第一个可变参数:printf(stringformat,any...a){}stringsprintf(stringformat,any...a){}以上是本次更新新增的两个标准函数,均支持可变参数,其中...表示可变参数,调用时为如下:printf("hello%s","123");printf("hello-%s-%s","123","abc");printf("hello-%s-%d","123",123);stringformat="thisis%s";printf(format,"gscript");strings=sprintf("nicetomeet%s","you");assertEqual(s,"nicetomeet你”);与大多数语言类似,可变参数本质上是一个数组,因此可以用来循环:intadd(strings,int...num){println(s);整数总和=0;for(inti=0;i
