Vì vậy, tôi hiểu rằng bạn không được phép trực tiếp phân lớp Fixnum, Float hoặc Integer, vì chúng không có phương thứC# mới. Sử dụng DelegateClass dường như làm việc mặc dù, nhưng nó là cách tốt nhất? Bất cứ ai biết lý do đằng sau những lớp học này không có #new là gì?Phân lớp Fixnum trong ruby
Tôi cần một lớp học mà cư xử như một Fixnum, nhưng có một số phương thức bổ sung, và tôi muốn để có thể tham khảo giá trị của nó thông qua self
từ bên trong lớp, ví dụ:
class Foo < Fixnum
def initialize value
super value
end
def increment
self + 1
end
end
Foo.new(5).increment + 4 # => 10
Hãy cho chúng tôi biết bạn đang thực sự cố gắng làm gì (mục tiêu cuối cùng) và chúng tôi sẽ cố gắng cho bạn biết cách tốt nhất để làm điều đó. Tôi không nghĩ rằng phân lớp là thích hợp ở đây. –
đã cập nhật câu hỏi. – cloudhead