我有一个 class Container
,它有一个属性type
存储其中存储的元素类型:
class Container
def initialize(@type = Class)
end
end
我想像这样使用它:
array = Container.new(Int32)
# or
array = Container.new(String)
但是,当运行它时,我得到:can't use Class as the type of instance variable @dtype of Crystalla::Ndarray, use a more specific type
我怎样才能做到这一点?如果我查看其他语言和库,如 numpy,它们确实在它们的 ndarray 中存储了一个类型:
np.ndarray(shape=(2,2), dtype=float)
我怎样才能在水晶中实现类似的东西?
编辑: dtype 本身是 python 中的一个类,但它似乎仍然像我试图实现的那样持有一个类型/类