C++ मा CFNetwork प्रोक्सी नतिजाहरू सिधै पढ्नुहोस्
C++ बाट Apple का C प्रोक्सी लुकअप API प्रयोग गर्नुहोस् र सापटी लिइएका शब्दकोश मानहरूलाई स्वामित्वका वस्तुका रूपमा नछोडी जीवित राख्नुहोस्।
CFNetwork को प्रोक्सी लुकअप C++ बाट सिधै प्रयोग गर्न सकिने C API हो; सबै कुरा Objective-C वस्तुमा बदल्नु वैकल्पिक हो। क्रमबद्ध प्रोक्सी शब्दकोशहरू पाउन CFNetworkCopyProxiesForURL लाई लक्ष्य CFURL र CFNetworkCopySystemProxySettings का सेटिङहरूसँग कल गर्नुहोस्।
| मान | स्वामित्व |
|---|---|
| Copy ले बनाएका वा फर्काएका वस्तुहरू, मार्ग र सेटिङहरू सहित | कल गर्नेको स्वामित्वमा; प्रत्येक गैर-नल स्वामित्व वस्तु मुक्त गर्नुहोस् |
| एरेबाट शब्दकोश वा Get मार्फत शब्दकोशबाट होस्टनाम | सापटी लिइएको; नराखी मुक्त नगर्नुहोस् |
मान्य routes र दायराभित्रको इन्डेक्सका लागि, निकास यसरी हुन सक्छ:
CFDictionaryRef proxy = static_cast<CFDictionaryRef>(
CFArrayGetValueAtIndex(routes, index));
CFStringRef hostname = static_cast<CFStringRef>(
CFDictionaryGetValue(proxy, kCFProxyHostNameKey));
प्रविष्टिलाई अन्त्य बिन्दु मान्नु अघि kCFProxyTypeKey पढ्नुहोस्। सिधा र स्वचालित-कन्फिगरेसन उम्मेदवारहरूलाई फरक व्यवहार चाहिन्छ.
स्वामी जीवित रहँदा कुनै ठोस प्रविष्टिको CFString होस्टनाम र CFNumber पोर्ट रूपान्तरण गर्नुहोस्। निकालिएका C++ मानहरू त्यसपछि ट्रान्सपोर्टको कन्फिगरेसनमा जान सक्छन्। नतिजापछि पनि CFString आफैं राख्न, पहिले त्यो राख्नुहोस् र पछि CFRelease सँग सन्तुलन गर्नुहोस्; अन्यथा त्यसलाई समात्ने स्वामीलाई मुक्त गर्नु अघि काम सक्नुहोस्।
सफाइ गर्दा बनाइएको/प्रतिलिपि गरिएको लक्ष्य URL, सेटिङ शब्दकोश र नतिजा एरे मुक्त गर्नुहोस्, आवश्यक परे स्कोप गार्ड प्रयोग गर्नुहोस्। कुनै चरको CFStringRef प्रकार मात्रले Get नतिजामा स्वामित्व दिँदैन।