रूबी में स्ट्रिंग प्रक्षेप का उपयोग करने का उचित तरीका इस प्रकार है:
name = "Ned Stark"
puts "Hello there, #{name}" #=> "Hello there, Ned Stark"
यही तरीका है कि मैं हमेशा इसका इस्तेमाल करने का इरादा रखता हूं।
हालांकि, मैंने रूबी के स्ट्रिंग इंटरपोलेशन में कुछ अजीब देखा है । मैंने देखा है कि रूबी में स्ट्रिंग इंटरपोलेशन चर चर के संबंध में घुंघराले ब्रेसिज़ के बिना काम करता है। उदाहरण के लिए:
@name = "Ned Stark"
puts "Hello there, #@name" #=> "Hello there, Ned Stark"
और यह कि गैर-इंस्टेंस चर के रूप में एक ही चीज़ की कोशिश करना काम नहीं करता है।
name = "Ned Stark"
puts "Hello, there, #name" #=> "Hello there, #name"
मैंने 1.9.2 और 1.8.7 दोनों में सफलता के साथ यह कोशिश की है।
यह काम क्यों करता है? यहाँ दुभाषिया क्या कर रहा है?