0
私はnoob question.Please attr_accessorを実装するために、以下のルビープログラムの出力を教えてください。attr_accessorの実装
class SimpleService
attr_accessor :name
def initialize(name)
@name = name
end
def process
if false # some condition met
name = 'Akshay'
end
name
end
end
私はこのクラス
SimpleService.new('John Doe').process
=> nil
はなぜ結果nilで実行?
私は
def process
if false # some condition met
self.name = 'Akshay'
end
name
end
に名前を明示的に自己を使用して今すぐ出力は
SimpleService.new('John Doe').process
=> "John Doe"
なぜ結果が今、 "ジョン・ドウ" である?ありますか
私はルビーの初心者です。
ありがとうございます!
@jörg-w-mittag私はこれに同意しません。この疑問は、なぜ 'if false'の下で明示的な受信機を使うと、何らかの手段で高い受信者_を必要としない戻り値の振る舞いを変更する理由です。 – mudasobwa