您的位置:首页 > 其它

aauto学习系列之<8>函数1

2015-08-19 13:13 435 查看
一.函数的定义

1.定义函数:

<1>函数体可以用” {}”,也可以用”begin end”。

function 函数名字(形参,形参2,...) {/begin

return 返回值,返回值2,...  ;
}/end


<2>函数可以赋值给成员变量、具名常量。

函数名字=function (形参,形参2,...) {/begin

return 返回值,返回值2,...  ;
}/end


<3>局部函数只要在前面加上 var

二.定义成员函数

定义成员函数的语法:

tab={};
tab.函数名字=function(形参列表){

}


也可以这样定义成员函数

tab={};
function tab.函数名字(形参列表){

}


调用成员函数

tab.函数名字(参数列表);


三.函数参数

1.可变参数:

在函数定义的形参列表尾部,可以用三个连续的圆点表示可变参数,可变参数必须是最后一个参数:

io.open()
func=function(a,b,...){
var arg={...}
io.print(#arg+"个参数");
}
func(1,2,3,4,5);


2.在形参中指定默认值参数

实参可以省略,省略的实参传递null空值。在函数定义的形参列表中,可以为任何参数指定默认值。

io.open();
function func(a,b=2,c,d=4){
print(a,b,c,d);
}
func(1,,3,4);


四.owner参数

1.成员函数的owner参数

在成员函数内部可以使用owner参数获取当前的调用该函数的主体对象。例如,执行tab.func()时,tab.func内部的owner参数指向tab。

io.open()
func=function(){
io.print(owner.name," adopt me");
}
tab={}
tab.name="i am tab"
tab.say=func
tab.say()


2.AAuto代码文件的owner参数

一个独立的aau代码文件也是一个匿名的函数,当一个aau文件以下方式执行时,owner参数为代码文件的路径。

独立运行的aau代码文件,并且该文件不在当前打开的工程目录内

使用import语句加载的aau文件、dll文件可以获取owenr参数
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: