我想傳遞一個對象來運行並將它返回給調用者函數。例如,如何調用傳遞給方法的參數?
1.rb是我的第一個文件
require '2'
class A
x=B.new
var = x.func
end
2.rb是我的第二個文件
class B
def self.func
#here i have to return same object that is x to var.what to do
end
我想傳遞一個對象來運行並將它返回給調用者函數。例如,如何調用傳遞給方法的參數?
1.rb是我的第一個文件
require '2'
class A
x=B.new
var = x.func
end
2.rb是我的第二個文件
class B
def self.func
#here i have to return same object that is x to var.what to do
end
你是對從func
函數返回的自我,但不要把它聲明與類方法def self.func
但實例方法def func
。
With def self.func
您需要通過B.func
(類方法調用)調用它,而不是B.new.func
(實例方法調用)。
這有幫助嗎?
爲什麼我得到負面票。我試圖返回自我,但它沒有奏效 – dabs
將'def self.func'更改爲'def func'。 'self.func'意味着方法在類B上定義,而不是B的實例。然後'return self'將起作用。 – Max
我懷疑反對票是因爲這個問題難以理解。我可以看到一些我理解的詞,比如「參數」和「方法」,但是「我怎樣才能調用傳遞給方法的參數?」沒有意義,並且在問題中所需的代碼和解釋無助於此。正如你正在學習的那樣,你正在使用非常寬鬆的描述,這是無法幫助的。嘗試將其分解成更多步驟,然後用簡單的英語寫一些你正在嘗試做的事情。 –