2014-06-12 6 views
5

लुआ के वर्तमान संस्करण पूर्णांक संख्याओं का समर्थन नहीं करते हैं, केवल तैरते हैं। (आगामी 5.3 के साथ यह बदल रहा है, लेकिन चलिए इसे अनदेखा करते हैं।)हमें lua_pushinteger() का उपयोग क्यों करना चाहिए?

तो, मेरा प्रश्न है: lua_pushinteger() में क्या उपयोग है? यदि संख्याएं फ्लोट में डाली जाती हैं, तो lua_pushnumber() का उपयोग क्यों न करें?

(कृपया, जिसके लिए आज एक अच्छा जवाब है, लेकिन एक जवाब है कि अन्यथा मेरी curisoty संतुष्ट नहीं करता है "5.3 के साथ भविष्य संगतता के लिए" का उत्तर नहीं देते: पूर्णांक समर्थन पुराने दिनों में उम्मीद नहीं थी मैं जानना चाहता हूं कि lua_pushinteger() पहली जगह में पेश किया गया था, जो कि हिंडसाइट में माफी नहीं है।)

+0

जानकारी के संभावित नुकसान के बारे में चेतावनियों को दबाने के लिए? –

+0

आपके प्रस्ताव का उत्तर सही है, मैं अपने कोड में * पूर्णांक और * हस्ताक्षरित 5.3 को अनदेखा करता था, लेकिन अब मैं देखता हूं, * पूर्णांक और * हस्ताक्षर किए गए कोड को 5.3 में आसानी लाने के लिए पेश किया गया था। – user1095108

उत्तर

5

एपीआई में पूर्णांक की स्पष्ट हैंडलिंग दस्तावेज़ीकरण, प्रदर्शन और शुद्धता के लिए पेश की गई थी।

एपीआई के अंदर स्पष्ट रूप से पूर्णांक के हैंडलिंग को ध्यान में रखते हुए कोर कोर को और फ़्लोट से सर्वोत्तम रूपांतरण का उपयोग करने की अनुमति देता है; कुछ प्लेटफार्मों में, अगर यह नैतिक रूप से किया जाता है तो यह महंगा हो सकता है। यह कोर को अतिप्रवाह की जांच करने की अनुमति देता है, हालांकि लुआ 5.1 और 5.2 ने यह जांच नहीं की है।

+0

धन्यवाद। मेरे पास एक छोटा सा प्रश्न है: मैं समझता हूं कि "दस्तावेज" और "प्रदर्शन" का अर्थ क्या है, लेकिन "शुद्धता" से आपका क्या मतलब है? चूंकि लुआ ओवरफ्लो की जांच नहीं करता है, इसलिए इंट से फ्लोट करने के लिए एक और कैसे गलत हो सकता है? –

+0

@NiccoloM।, यह * ओवरफ्लो के लिए जांच सकता है ... – lhf

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