c: \ program files \ microsoft दृश्य स्टूडियो 9.0 \ vc \ include \ result.h (212): चेतावनी C4275: गैर dll- इंटरफ़ेस वर्ग 'std :: _ Container_base_aux' को dll- इंटरफ़ेस वर्ग 'std :: _ कंटेनर_बेस_ऑक्स_ऑलोक_real & lt; _Alloc & gt; 1 & gt; 1 & gt; के साथ [1 & gt; _Alloc = std :: संभाजक & LT; mysqlpp :: पंक्ति & gt; 1 & gt; ] 1 & gt; सी: \ प्रोग्राम फ़ाइलें \ माइक्रोसॉफ्ट विज़ुअल स्टूडियो 9.0 \ वीसी \ एक्सट्यूमेन्टिटी (377): 'std :: _ कंटेनर_बेस_ऑक्स' की घोषणा देखें
यह कंटेनरों से संबंधित किसी भी समस्या का कारण हो सकता है या इसे विजुअल स्टूडियो 2008 में सुरक्षित रूप से नजरअंदाज किया जा सकता है?
इस स्थिति में, मुझे लगता है कि यह एसटीडी पर निर्भर करता है ::रनटाइम त्रुटि। क्लाइंट को इस क्लास का उपयोग करने के लिए क्लाइंट साइड पर दी गई परिभाषा का उपयोग करना चाहिए, न कि डीएलएल साइड। इसके लिए क्लाइंट कंपाइलर को सफल बनाने के लिए डीएलएल कंपाइलर के समान संस्करण होना चाहिए।
और इसके अलावा क्लास की परिभाषाएं मॉड्यूल की सीमाओं में पोर्टेबल नहीं हैं, इसके लिए भी स्मृति स्वामित्व पर विचार करना है। < / P>
यदि आप एक वर्ग से प्राप्त करते हैं जिसमें std :: स्ट्रिंग की तरह एक आंतरिक वैरिएबल है, तो ऐसा होने वाला एक आपदा होगा। यदि डीएलएल उस एप्लिकेशन से एक अलग रनटाइम का उपयोग करेगा जिसमें दूसरे वर्ग से निकला है, तो निम्न हो सकता है:
- बेस स्ट्रिंग को टेक्स्ट वैल्यू के साथ आरंभ करता है।
- व्युत्पन्न स्ट्रिंग को बदलने का प्रयास करेंगे।
- यह स्ट्रिंग के हीप मेमोरी को जारी करने का प्रयास करेगा।
यह निश्चित रूप से तारों तक सीमित नहीं है यह सिर्फ एक उदाहरण था। किसी भी परिदृश्य में जहां 1 रनटाइम कुछ आवंटित करता है और दूसरा डेलोकेट होता है, उसका परिणाम क्रैश हो जाता है।
हेप मेमोरी उस क्रम के द्वारा स्वामित्व है, जिसका उपयोग बेस क्लास द्वारा किया जाता है। व्युत्पन्न क्लास के थ्रट्र रनटाइम इसे रिलीज करने की कोशिश करता है -> त्वरित क्रैश आप dll प्रदाता की दया में हैं ताकि आप एक ही सीएल + + कंपाइलर के साथ संकलित एक डीएलएल दे सकते हैं, और उसी क्रम का उपयोग कर सकते हैं। यह एक रखरखाव दुःस्वप्न है।
डीएलएल वर्ग इंटरफेस बिना संदेह के सबसे बुरे विचार हैं।
केवल 2 छूट हैं:
< Ul>अन्य सभी मामलों में, DLL क्लास इंटरफेस समर्थन बुरे सपने हैं, और आने वाली आपदाओं का इंतजार है।
मुझे लगता है कि संभवत: आपको कोई समाधान सुझा सकता है।
अगर आप एक ही संकलक के साथ सब कुछ संकलित करते हैं और / MD
का उपयोग करते हैं, तो सभी मॉड्यूल एक ही क्रम ।
Comments
Post a Comment