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 नतिजामा स्वामित्व दिँदैन।

सम्बन्धित लेखहरू