在 Matrix 类的实例上调用 set_element
时出现以下错误
NoMethodError: private method ‘set_element’ called for Matrix[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]:Matrix
但是 set_element
列在文档中的公共(public)实例方法下
此外,set_element 是 []=(i, j, v) 的别名并使用此方法我得到以下错误
ArgumentError: wrong number of arguments (3 for 2)
没有任何意义,感谢任何帮助。
ruby 1.9.2 p180
最佳答案
您可以简单地公开 setter 函数,可能在您自己的类中(或在 Matrix 本身):
class SetableMatrix < Matrix
public :"[]=", :set_element, :set_component
end
关于Ruby Matrix set_element 私有(private)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6463668/