मैं एक बाहरी सी फ़ंक्शन का उपयोग करता हूं जो गतिशील रूप से आवंटित const char*
देता है।क्यों कॉन्स्ट शून्य * के लिए कोई std :: मुफ्त अधिभार नहीं है?
मैं इसे प्रबंधित करने के लिए unique_ptr<const char, decltype(std::free)>
का उपयोग करना चाहता हूं।
लेकिन std::free(const void*)
अधिभार नहीं है इसलिए मुझे invalid conversion from 'const void*' to 'void*'
मिलते हैं और const_cast<char*>()
का उपयोग करना होगा।
क्या यह सिर्फ एक मानक पुस्तकालय अपूर्णता है या इसके पीछे कुछ और है?
@ फोर्सब्रू, सूचक 'const' नहीं है, यह 'const' स्मृति को इंगित करता है। – sad1raf
@ForceBru: फिर भी यह ठीक है ['हटाएं '' const' पॉइंटर्स] (http://stackoverflow.com/q/755196/10077)। –
@FredLarson, यह नहीं पता था, जानकारी के लिए धन्यवाद! – ForceBru