क्या स्विफ्ट में एक संकलन समय सम्मिलित करना संभव है जैसे सी ++ में static_assert? शायद एक कंपाइलर ब्रेक को मजबूर करने के लिए जेनरिक पर टाइप बाधाओं का फायदा उठाने का कोई तरीका?स्विफ्ट में समय सम्मिलित करें?
उत्तर
आप एक सामान्य ज़ोर, जहां एप्लिकेशन दुर्घटना के बारे में बात कर रहे हैं यदि किसी विशेष हालत में विफल रहता है, बस का उपयोग करें: assert(condition,message)
उदाहरण के लिए: assert(2 == 3,"failing because 2 does not equal 3")
यह स्विफ्ट में संभव है। हालांकि, मुझे ध्यान रखना चाहिए कि ऐप्पल का डिज़ाइन मंत्र यह है कि एक ऐप को कभी भी क्रैश नहीं करना चाहिए, बल्कि इसकी सभी त्रुटियों को "परिष्कृत" फैशन में संभालना चाहिए।
आप सामान्य रनटाइम जोर देने का जिक्र कर रहे हैं। मैं जो पूछ रहा हूं वह एक संकलन समय है जो C++ में static_assert जैसा है। यह स्थिर रूप से सत्यापन योग्य अभिव्यक्तियों के लिए उपयोग किया जाता है जो विफल होने पर एक कंपाइलर त्रुटि का कारण बनता है। – Neil
नील, खेद है कि मैंने वास्तव में पालन नहीं किया - मैंने static_assert का उपयोग नहीं किया है। स्विफ्ट पुस्तक में मूलभूत खंड का बहुत अंत संक्षेप में दावाों का उल्लेख करता है। मैं आपसे पूछ रहे हैं जैसे संकलन समय के आवेषण के संबंध में कुछ भी नहीं देखा। मुझे नहीं पता कि वे भी उनका समर्थन करते हैं या नहीं। लिंक: https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/TheBasics.html –
यह वर्तमान में Swift evolution में समीक्षा अधीन है लेकिन वर्तमान में भाषा में नहीं है।
हालांकि यह लिंक प्रश्न का उत्तर दे सकता है, यहां उत्तर के आवश्यक हिस्सों को शामिल करना बेहतर है और संदर्भ के लिए लिंक प्रदान करते हैं। लिंक किए गए पृष्ठ में परिवर्तन होने पर लिंक-केवल उत्तर अमान्य हो सकते हैं। - [समीक्षा से] (/ समीक्षा/कम गुणवत्ता वाली पोस्ट/1905071 9) – Maak
- 1. एक्सेस डेटाबेस में दिनांक/समय सम्मिलित करें
- 2. सम्मिलित करें सम्मिलित बनाम जांच
- 3. कैसंद्रा में विश्वसनीय सम्मिलित समय कैसे प्राप्त करें?
- 4. ऑरैकल में दिनांक और समय कैसे सम्मिलित करें?
- 5. postgresql सम्मिलित क्वेरी में वर्तमान डेटाटाइम को कैसे सम्मिलित करें
- 6. स्विफ्ट - स्थानीय दिनांक समय प्राप्त करें
- 7. एनएचबीर्नेट तालिका में सम्मिलित करें
- 8. हाइबरनेट पोस्टइन्सर्टएवेंटलिस्टर्स-सम्मिलित लेनदेन को सम्मिलित करें?
- 9. सभी/थोक सम्मिलित करें
- 10. # स्विफ्ट में आतंक (संकलन-समय त्रुटि को कैसे चिह्नित करें)
- 11. बिल्ड समय पर जेकील पेज में अंतिम अद्यतन समय-टिकट कैसे सम्मिलित करें?
- 12. MySQL पुराने रिकॉर्ड सम्मिलित करने का समय प्राप्त करें?
- 13. SQLite डेटाबेस में वर्तमान दिनांक और समय सम्मिलित करना
- 14. स्विफ्ट में मानचित्र करते समय आइटम छोड़ें?
- 15. एक सम्मिलित करें ... लार्वेल
- 16. थोक सम्मिलित करें, पोस्टग्रेज़
- 17. तीन.जेएस सम्मिलित करें छवि
- 18. सम्मिलित करें प्रकार .NET
- 19. InnoDB बनाम MyISAM सम्मिलित क्वेरी समय
- 20. SQL सर्वर सम्मिलित करें उदाहरण
- 21. सम्मिलित
- 22. सिद्धांत 2 बैच सम्मिलित करें
- 23. बाइनरी ट्री सम्मिलित करें एल्गोरिदम
- 24. टेक्स्टबॉक्स में छवि को कैसे सम्मिलित करें
- 25. ओरेकल में टाइमस्टैम्प कैसे सम्मिलित करें?
- 26. कैसे सम्मिलित करें "|" संगठन मोड में
- 27. c_char_p सरणी में आइटम कैसे सम्मिलित करें
- 28. सूची में एकाधिक तत्व कैसे सम्मिलित करें?
- 29. ऑक्टोप्रेस ढांचे में छवि कैसे सम्मिलित करें?
- 30. एक्सेल सेल में तस्वीर कैसे सम्मिलित करें?
मुझे नहीं पता कि यह कैसे उपयोगी हो सकता है। और स्विफ्ट पहले से ही 'जहां' जेनेरिक –
को #error की तरह बाध्य करने के लिए उपयोग कर सकता है? –
मैंने केवल सामान्य कार्यान्वयन दृष्टिकोण के रूप में जेनेरिक को बाधित करने का उल्लेख किया है, न कि मैं जो कहना चाहता हूं। मेरे मामले में मैं बड़ी संख्या में अंतर-संबंधित संकलन समय स्थिरांक पूर्णांक परिभाषित कर रहा था जिसे मैं संकलित समय पर सत्यापित करना चाहता था। कुछ सामान्य रूप से मैं C++ में static_assert का उपयोग करता हूं। – Neil