Tuesday 15 May 2012

In Lua, how do I remove a table within a table? -


उदाहरण के लिए:

  आइटम = {[753] = {}, [1 9 2] = {}, [789] = {}, [7 9] = {}, [790] = {}, [776] = {},}  

मैं 789 को हटाना चाहूंगा और इसके अंदर के सभी डेटा। मैंने दोनों कोशिश की: table.remove (आइटम, 2); और टेबल। निकालें (आइटम, 78 9); (मुझे यकीन नहीं था कि अनुक्रमण कैसे काम करता है) कोई भाग्य नहीं।

यह उतना आसान है शून्य मान होता है, तो यह ऐसा है जैसा कि

  आइटम [789] = शून्य  

कुंजी मौजूद नहीं है।

  & gt; टी = {[5] = {}, [10] = {}}> के लिए, वी में जोड़े (टी) प्रिंट करते हैं (कश्मीर, वी) अंत 5 तालिका: 0037 सीबीसी 10 10 तालिका: 0037 सीबीई 8 & gt; टी [5] = शून्य & gt; के लिए, वी (पी) जोड़े (टी) प्रिंट में (कश्मीर, वी) समापन 10 तालिका: 0037CBE8  

यह भी देखें। (यद्यपि ऑनलाइन संस्करण लिआ 5.0 के लिए लिखा गया है, यह अभी भी लुआ 5.1 पर लागू होता है)

... आप उसे हटाने के लिए किसी तालिका फ़ील्ड को शून्य प्रदान कर सकते हैं।

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


No comments:

Post a Comment