传递给“ _call”元方法的第一个参数是什么?

时间:2019-07-25 12:52:42

标签: squirrel

我试图弄清楚松鼠的_call元方法的语义,并为明显的无关紧要的第一个论点所困扰。

进行以下设置:

t <- {};
t.setdelegate({function _call(...) {
    print("this = " + this + "\n");
    foreach(i,v in vargv) {
        print("v" + i + " = " + v + "\n");
    }
}});

然后调用t将导致显示额外的第一个参数:

: t(42)
this = (table : 0x0x2681340)
v0 = (table : 0x0x2614a20)
v1 = 42

: print(t)
(table : 0x0x2681340)

作为第一个参数传递的这个神秘表是什么(请注意,它不是t,而是第一个参数),它将始终作为第一个参数传递以便我可以忽略它吗? >

0 个答案:

没有答案