What is the difference between a symbol and a variable in Ruby? -


इस सवाल का पहले से ही एक उत्तर है: < / P>

  • 11 उत्तर

    मैं क्या समझने की कोशिश कर रहा हूँ अंतर एक प्रतीक और रूबी में एक चर के बीच है। वे एक ऐसा नाम देने में सटीक समान कार्य करते थे जो एक वस्तु का संदर्भ देता है।

    मैंने पढ़ा है कि प्रतीक तेजी से कार्यक्रमों के लिए हैं, लेकिन मुझे यकीन नहीं है कि वे और कैसे वे किसी भी तरह से चर से भिन्न हैं।

    प्रतीक एक" आंतरायिक "स्ट्रिंग है, यह किसी चीज़ से स्थिर की तरह अधिक है विशिष्ट उदाहरण:

      account_details = {: name = & gt; 'बॉब' ,: आयु = & gt; 20}   

    यहां एक चिह्न है जो कि : name और : age हैश के लिए कुंजी है। वे चर के साथ भ्रमित नहीं हैं। account_details एक चर है।

    रूबी में कोई चर एक प्रकार के ऑब्जेक्ट के लिए एक हैंडल है, और वह ऑब्जेक्ट एक प्रतीक हो सकता है।

    आम तौर पर आप स्ट्रिंग का उपयोग करते समय प्रतीकों को नियोजित करते हैं, जिसके परिणामस्वरूप कई पुनरावृत्तियों होंगे। ध्यान रखें कि तार आम तौर पर अलग-अलग ऑब्जेक्ट हैं, जहां एक विशिष्ट प्रतीक हमेशा एक ही ऑब्जेक्ट को संदर्भित करता है, उन्हें अधिक कुशल बनाने के लिए अक्सर उपयोग किया जाता है।

    तुलना करें:

      "string" .object_id == "स्ट्रिंग" .object_id # = & gt; False: string.object_id ==: string.object_id # = & gt; सच है   

    हालांकि उन दो तार समान हैं, वे स्वतंत्र स्ट्रिंग ऑब्जेक्ट्स हैं। हैश के लिए कुंजी के रूप में इस्तेमाल किया जाता है, विधियों के तर्कों और अन्य सामान्य मामलों में, इन ऑब्जेक्ट्स आपकी मेमोरी को जल्दी से बड़ी मात्रा में डुप्लिकेशन्स के साथ बेतरतीब करते हैं जब तक कि आप एक ही स्ट्रिंग उदाहरण का उपयोग करने के लिए अपने रास्ते से बाहर नहीं जाते। प्रतीक आपके लिए यह स्वचालित रूप से करते हैं।

Comments

Popular posts from this blog

ios - Adding an SKSpriteNode to SKScene from a child SKSpriteNode -

Matlab transpose a table vector -

c# - Textbox not clickable but editable -