LUA 对象继承与注意

-- 定义这个全局类
CBase = {}
-- 设置 LUA 的类的关键
CBase.__index = CBase

function CBase:new(oo)
    local o = oo or {}
    setmetatable(o, self)
    -- 定义类的静态变量
    self.g_MaxCount = 10
    -- 定义类的成员属性,用 o 
    o.name = ""
    o._dataList = {} 
    return o
end

-- 成员函数定义,要用 : 指定,才能用 self
function CBase:doxxx(pData)
    print(self.name.."doxxx")
    self._dataList[pData.id] = pData
end

-- 定义子类
CClassA = CBase:new()
CClassA.__index = CClassA
function CClassA:new(oo)
 local o = oo or {}
 setmetatable(o, self) 
 -- 定义类的成员属性,用 o 
 o.name = "CClassA" 
 return o
end

-- 调用时,要用 :
local testObj = CClassA:new()
test:doxxx(1)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值