元方法
类的实例允许通过元方法修改类的一些特定方面的语义。对于C++程序员来讲,元方法行为就是一些类似重载运算符的丑陋方法。支持类的元方法有:_add,_sub,_mul,_div,_unm,_modulo,_set,_get,_typeof,_nexti,_cmp,_call,_delslot,_tostring.
类的对象只支持两种元方法:_newmember和_inherited.
下面的例子展示怎样创建一个实现元方法_add的类:
class Vector3
{
constructor(...)
{
if(vargc >= 3)
{
x = vargv[0];
y = vargv[1];
z = vargv[2];
}
}
function _add(other)
{
return ::Vector3(x+other.x,y+other.y,z+other.z);
}
x = 0;
y = 0;
z = 0;
}
local v0 = Vector3(1,2,3)
local v1 = Vector3(11,12,13)
local