2010-05-19 14 views
7

मैं here का उल्लेख किया गया फ़ाइल नाम के बाद एक लुआ पैकेज नामकरण के लिए विधि का उपयोग करने का प्रयास कर रहा हूं, हालांकि _REQUIREDNAME कभी परिभाषित नहीं किया गया है।_REQUIREDNAME हमेशा शून्य

print("_REQUIREDNAME: ", _REQUIREDNAME) 
return nil; 

packageTest.lua:

require "samplePackage" 

और यह आउटपुट जब मैं packageTest.lua चलाने > _REQUIREDNAME: nil

मैं भी नहीं कर सके उदाहरण के लिए मैं इन दो फ़ाइलों

samplePackage.lua है लूआ 5.1 रिफ्रेंस मैनुअल में _REQUIREDNAME का कोई उल्लेख नहीं मिला, तो क्या इसे भाषा से हटा दिया गया था, या क्या मुझे कुछ याद आ रहा है?

उत्तर

11

जिस तरह से पैकेज और मॉड्यूल काम करते हैं, लुआ 5.1 में कुछ बड़े बदलाव हुए, जिससे लुआ में प्रोग्रामिंग का पहला संस्करण अधिकतर उस विषय के बारे में अप्रचलित हो गया।

5.1 में, मॉड्यूल नाम मॉड्यूल के लिए require द्वारा तर्क के रूप में पारित किया गया है। आप ... के साथ उपयोग कर सकते हैं:

print("Module name: ", ...) 

लुआ में प्रोग्रामिंग की second edition लुआ 5.1 शामिल किया गया। यह मुफ़्त नहीं है, लेकिन संकुल और मॉड्यूल के बारे में अध्याय available as a sample (PDF) है।

संबंधित मुद्दे