は、私は1つのプロジェクトを開発する奇妙な困難に会いました。私はクラスで十分な経験を持っていないので、これが私がここで尋ねる理由です。 1つのパラメータで初期化されたクラスが1つあり、そのクラス関数を呼び出すために他のクラスが必要ですが、そのクラスが初期化されるまでは私は傾けることができません。ここでRubyの間、クラスの通信
は、私が話して何のいくつかの例です:
class AVR
def initialize(device)
@device = device
@avr_conf = YAML::load(File.open("./devices/#{device}.yaml"))
end
def avr_conf
return @avr_conf
end
end
class IO
def setMode(a,b)
"#{AVR.avr_conf[a]} = #{b}"
end
end
ここで簡単な方法はないように思えます。 'AVR'は' device'を初期化する必要があり、 'setMode'メソッドにはデバイスがありません。 'IO'クラスの完全なコードを表示しませんか? –
@SergioTulentsevそれだけだという考えが、私は何も見つからないアンロードされたクラスはないだろうので、また初期化されるだろう、すべてのサブクラスを初期化した後に何らかの形でマスタークラスを作りたいですか? –
クラス全体が表示されていないような気がします。上記のコードは実行されませんでしたか? 'class IO'の' setMode'がAVRでシングルトンメソッドを実行しようとしています...正しいのですか? AVRにはもっと多くのものが必要です....「def self.avr_conf」はどこかにあるはずですか? – slindsey3000