सी भाषा में देर से binding कैसे प्राप्त कर सकता है?सी भाषा में देर से बाध्यकारी कैसे प्राप्त कर सकता है?
उत्तर
देर बाध्यकारी वास्तव में सी भाषा का एक कार्य नहीं है, आपके निष्पादन वातावरण आपके लिए कुछ और प्रदान करता है।
कई प्रणालियों लिंकर/लोडर की एक विशेषता के रूप में बाध्यकारी टाल प्रदान करेगा और आप भी है कि पुस्तकालय तो आप के अंदर एक प्रतीक का पता पाने के लिए इस तरह के रूप dlopen
(किसी साझा लाइब्रेरी खोलने के लिए) स्पष्ट कॉल का उपयोग और dlsym
सकता है (इसे एक्सेस कर सकते हैं या इसे कॉल कर सकते हैं)।
सी मानक के साथ देर से बाध्यकारी होने का एकमात्र अर्द्ध पोर्टेबल तरीका system()
के साथ कुछ चालबाजी का उपयोग करना होगा और यहां तक कि कम से कम आंशिक रूप से कार्यान्वयन-विशिष्ट है।
यदि आप स्थगित बाध्यकारी के बजाय बात नहीं कर रहे हैं लेकिन इसके बजाय बहुरूपता, तो आप फ़ंक्शन पॉइंटर्स के साथ उस प्रभाव को प्राप्त कर सकते हैं। असल में, आप struct
बनाते हैं जिसमें उस प्रकार के तरीकों का पता लगाने के लिए फ़ंक्शन पॉइंटर्स के साथ एक प्रकार के सभी डेटा होते हैं। फिर, "कन्स्ट्रक्टर" (आमतौर पर init() फ़ंक्शन) में, आप फ़ंक्शन पॉइंटर्स को उस प्रकार के प्रासंगिक कार्यों में सेट करते हैं।
आपको अभी भी सभी कोड शामिल करने की आवश्यकता है, भले ही आप इसका उपयोग न करें, लेकिन इस तरह बहुरूपता प्राप्त करने के लिए संभव है।
सी में प्रतीक बाध्यकारी हमेशा संकलन समय पर किया जाता है, कभी रनटाइम नहीं होता है।
लाइब्रेरी बंधन, या गतिशील जोड़ने के रूप में यह कहा जाता है, dlopen()
और dlsym()
* nix पर, और LoadLibrary()
और GetProcAddress()
विंडोज पर के माध्यम से किया जाता है।
उद्देश्य-सी या लुआ का उपयोग करें। दोनों देर से बाध्य भाषाएं हैं जो सी
के साथ आसानी से इंटरफ़ेस कर सकती हैं बेशक आप अपना नाम संकल्प योजना लागू कर सकते हैं, लेकिन पहिया का फिर से आविष्कार क्यों कर सकते हैं?
दुर्भाग्यवश आपने ओएस निर्दिष्ट नहीं किया था। यूनिक्स के लिए आप साझा पुस्तकालयों का उपयोग कर सकते हैं, या कॉन्फ़िगर करने योग्य (प्लगइन) मॉड्यूल संरचना बना सकते हैं। विवरण के लिए आपको एक अपाचे 1.3 वेबसर्वर उपयोगी स्रोत कोड मिल सकता है। http://httpd.apache.org/download.cgi
cppdev एक और केवल अपनी टिप्पणी के साथ स्पॉट को मारने के लिए प्रतीत होता है। कृपया, the definition itself पर एक नज़र डालें। कुछ शब्दों में:
लेट बाइंडिंग, या गतिशील बंधन, एक कंप्यूटर प्रोग्रामिंग तंत्र जिसमें विधि पर एक वस्तु कार्यावधि में नाम द्वारा देखा जाता है बुलाया जा रहा है।
अन्य सभी उत्तरों सिर्फ मुख्य बिंदु को याद करते हैं, जो "नाम से दिखते हैं"।
जरूरत समाधान नाम से सही एक (या यहां तक कि हस्ताक्षर के जरिए) का चयन करने के लिए एक या दो समारोह के साथ कार्यों के लिए संकेत की एक लुकअप तालिका करने के लिए बहुत समान होगा। हम इसे एक "हैश तालिका" कहते हैं।
- 1. गतिशील बाध्यकारी == जावा में देर से बाध्यकारी या नहीं?
- 2. देर बाध्यकारी बनाम पॉलिमॉर्फिज्म - क्या अंतर है?
- 3. भाषा बाध्यकारी क्या है?
- 4. एक्सेल उदाहरण प्राप्त करने के लिए देर से बाध्यकारी उपयोग का उपयोग कैसे करें?
- 5. सी भाषा में फ़ाइल एक्सटेंशन प्राप्त करना
- 6. MSXML2.XMLHTTP विधि प्रारंभिक बाध्यकारी के साथ काम करता है, देर से बाध्यकारी
- 7. PHP 5.2 देर स्टेटिक बाध्यकारी (नई स्थैतिक) के बराबर है?
- 8. ऑटोफैक स्वचालित स्व-बाध्यकारी कर सकता है?
- 9. सी # 4, गतिशील कीवर्ड, और देर से बाध्यकारी के लिए CreateObject समकक्ष?
- 10. प्रारंभिक और देर बाध्यकारी के बीच क्या अंतर है?
- 11. PHP 5.3 में चर के साथ देर से स्थिर बाध्यकारी काम क्यों नहीं करता है?
- 12. क्या PHP में देर से स्थिर बाध्यकारी का उपयोग करना संभव है?
- 13. प्रारंभिक बाध्यकारी बनाम देर बाध्यकारी: तुलनात्मक लाभ और नुकसान क्या हैं?
- 14. मैं इरनो मान (सी भाषा) के लिए त्रुटि संदेश कैसे प्राप्त कर सकता हूं?
- 15. मैं सी # में वेक्टर प्रकार कैसे प्राप्त कर सकता हूं?
- 16. उद्देश्य-सी में उपयोगकर्ता की भाषा लोकेल कैसे प्राप्त करें?
- 17. सी भाषा
- 18. कोड में DataGridTextColumn का बाध्यकारी कैसे सेट कर सकता हूं?
- 19. मैं सी # में वर्तमान समय कैसे प्राप्त कर सकता हूं?
- 20. मैं सी # के साथ कोड में डेटा बाध्यकारी कैसे कर सकता हूं?
- 21. रूबी भाषा में, मैं स्ट्रिंग में लाइनों की संख्या कैसे प्राप्त कर सकता हूं?
- 22. भाषा बदलें सी # में
- 23. बहु-बाध्यकारी में 1 बाध्यकारी के लिए निरंतर मान कैसे पास कर सकता हूं?
- 24. सी # टूलटिप प्रदर्शित नहीं करता है काफी देर तक
- 25. मैं SWIG का उपयोग कर सी ++ एपीआई पर सी रैपर कैसे उत्पन्न कर सकता हूं?
- 26. कौन सी प्रोग्रामिंग भाषा में कम से कम वाक्यविन्यास है?
- 27. जावास्क्रिप्ट सी ++ बाध्यकारी?
- 28. फ़ायरफ़ॉक्स भाषा सेटिंग कैसे प्राप्त करें? (वास्तव में)
- 29. डी भाषा से सी ++ (सी) कॉल करें
- 30. JFrame भरी हुई है देर से
समारोह संकेत की एक सरणी का उपयोग कर के बारे में कैसे। फिर हम उपयोगकर्ता इनपुट के आधार पर सरणी से समारोह सूचक चयन कर सकते हैं – cppdev