क्या यह सी ++ में एक डीएलएल विकसित करने के लिए मान्य है जो साझा पॉइंटर्स को बढ़ावा देता है और उन्हें पैरामीटर के रूप में उपयोग करता है?क्या DLL इंटरफ़ेस में boost :: साझा पीआरटी का उपयोग करना ठीक है?
तो, क्या इस तरह के कार्यों को निर्यात करना ठीक है?
1.) boost::shared_ptr<Connection> startConnection();
2.) void sendToConnection(boost::shared_ptr<Connection> conn, byte* data, int len);
विशेष में: DLL सीमाओं या पार संदर्भ गिनती काम की आवश्यकता है कि exe होगा करता है और एक ही क्रम का उपयोग DLL?
उद्देश्य स्वामित्व स्वामित्व वाली समस्याओं से निपटने का इरादा है। इसलिए ऑब्जेक्ट हटा दिया जाता है जब दोनों डीएल और एक्सई इसका संदर्भ नहीं देते हैं।
सावधानी: यदि आप स्थिर सीआरटी को जोड़ रहे हैं तो आपको समस्याएं होंगी। प्रत्येक मॉड्यूल जो सीआरटी से स्थिर रूप से जुड़ा हुआ है, उसका अपना ढेर हो जाता है। यदि सभी मॉड्यूल डीएलएल सीआरटी से लिंक करते हैं तो वे सभी एक ढेर साझा करेंगे। – Zac