ruby: доступ к переменным вызывающей стороны из объявленного экземпляра obj - PullRequest
0 голосов
/ 16 февраля 2011
class X
end
class A
    def get_it
      puts @the_variable
    end
end

class B
  def init_it
     @the_variable = X.new
     a = A.new
  end
end

В приведенном выше коде я хочу, чтобы методы класса A обращались к экземпляру X, созданному в B

1 Ответ

2 голосов
/ 16 февраля 2011

Попробуйте использовать Object#instance_variable_set:

class B
  def init_it
     @the_variable = X.new
     a = A.new
     a.instance_variable_set(:@the_variable, @the_variable) 
 end
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...