2
У меня есть следующий класс Lua:Lua функция член класса вызова для каждого другого
-- file: myClass.lua
local myClass = {}
myClass.__index = myClass
setmetatable(myClass, {
__call = function (cls, ...)
return cls.new(...)
end,
})
function myClass.new(init_size)
local self = setmetatable({}, myClass)
self.max_size = init_size
return self
end
function myClass:set_max_size(x)
self.max_size = x
print(myClass:get_max_size()) -- <= [1]
end
function myClass:get_max_size()
return self.max_size
end
return myClass
В терминале, после следующей команды, выход был не то, что я ожидал.
> myClass = require 'myClass'
> myClassObj = myClass(5)
> myClassObj:set_max_size(10) ---<== this line will print nil instead of 10 as expected.
Любые идеи?