如何使用torch的类系统创建自定义类

Kev*_*hey 2 lua torch

我试图遵循实用功能火炬文档.

我做了以下事情:

Blah = torch.class('Blah')
function Blah:__init(); end
blah = Blah()
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

attempt to call global 'Blah' (a table value)
Run Code Online (Sandbox Code Playgroud)

我期望__init()函数以某种方式通过__callmetatable机制工作,但Blah似乎甚至没有metatable:

th> getmetatable(Blah) == nil
true
Run Code Online (Sandbox Code Playgroud)

也许文档已经过时了?但火炬似乎在内部以这种方式创造了大量的课程.

我刚刚更新到最新的火炬,所以我知道这不是我的火炬版本太旧了...

思考?

小智 5

do
 local Blah = torch.class('Blah')
 function Blah:__init() end
end

blah = Blah()
Run Code Online (Sandbox Code Playgroud)