2011-07-26 23 views
9

में में एक वर्ग चर के साथ मैं एक मॉड्यूल है यहएक मॉड्यूल की क्लास चर एक क्लास के भीतर पहुंचें रूबी

module Abc 
    @@variable = "huhu" 

    def self.get_variable 
    @@variable 
    end 

    class Hello 
    def hola 
     puts Abc.get_variable 
    end 
    end 
end 

a = Abc::Hello.new 
a.hola 

यह get_variable विधि का उपयोग कर के बिना @@variableHello अंदर पाने के लिए संभव है? मेरा मतलब है कि Abc.variable जैसे कुछ अच्छा होगा। बस उत्सुक।

+0

की [कैसे कर सकता है रूबी के attr_accessor उपज वर्ग चर या उदाहरण चर के बजाय वर्ग उदाहरण चर?] (Http://stackoverflow.com/questions/895747/how-can- संभव डुप्लिकेट की कोशिश rubys-attr-accessor-product-class-variables-or-class-instance-variables) –

उत्तर

4

आपने मॉड्यूल Abc में Hello वर्ग के दायरे के भीतर सीधे (जैसे कि, Abc.variable) @@variable उपयोग नहीं कर सकते। क्यूं कर? क्योंकि, जब रूबी दुभाषिया Abc.variable जैसा कुछ देखता है, तो यह variable एबीसी के वर्ग/मॉड्यूल विधि के रूप में सोचता है।

रुबी में प्रोग्रामिंग करते समय रुबी के तरीके को सोचना महत्वपूर्ण है।

+0

इसके अलावा नोट: यदि आप इस तरह के विचारों को बड़ी हद तक प्राप्त करना चाहते हैं तो मैंने हाल ही में रूबी कॉन्फ इंडिया 2011 में अपनी शिक्षा साझा की है। कृपया http://kartzontech.blogspot.com/2011/06/ruby-conf-india-2011.html पर अपनी बातचीत देखने के लिए स्वतंत्र महसूस करें और अपनी रेटिंग और प्रतिक्रिया दें। सबसे महत्वपूर्ण बात यह है कि आखिरी स्लाइड्स पढ़ें जहां मैंने उन संसाधनों का उल्लेख किया जो मेरी सोच को रूबी तरीके से आकार देने में मदद करते थे। – karthiks

-1

इस

Abc.class_variable_get(:variable) 
+0

कृपया अपने कोड या पूरक को स्पष्टीकरण के साथ विस्तारित करें या आप मॉडरेटर द्वारा अपना उत्तर हटाए जाने का जोखिम उठाएं। – sshashank124