मैं nftw उपयोग करने के लिए सीकैसे जब nftw
हालांकि, यह देखते हुए कि मैं क्या करना चाहते हैं में एक निर्देशिका संरचना पार करने के लिए चाहते हैं का उपयोग कर वैश्विक चर का उपयोग कर से बचने के लिए मैं एक वैश्विक चर का उपयोग कर के चारों ओर एक रास्ता नहीं दिख रहा।
(एन) ftw का उपयोग करने के पाठ्यपुस्तक उदाहरणों में सभी को फ़ाइल नाम प्रिंट करने जैसे कुछ करने में शामिल है। मैं चाहता हूं, इसके बजाय, पथनाम और फ़ाइल चेकसम लेने के लिए और उन्हें डेटा संरचना में रखें। लेकिन मुझे ऐसा करने का एक अच्छा तरीका नहीं दिख रहा है, जो एनएफटीडब्ल्यू को पारित किया जा सकता है, इस पर सीमाएं दी गई हैं।
मैं जिस समाधान का उपयोग कर रहा हूं वह वैश्विक चर शामिल है। Nftw द्वारा बुलाया गया फ़ंक्शन उस चर को एक्सेस कर सकता है और आवश्यक डेटा जोड़ सकता है।
क्या वैश्विक चर का उपयोग किए बिना ऐसा करने का कोई उचित तरीका है?
मैं, के बाद से बीएसडी पुस्तकालय "libarchive" (जो मैं भी उपयोग कर रहा हूँ) कि जिस तरह से सेट किया गया है कोड अलगाव की बहुत बनाने की खूबियों के बारे में पता था। लेकिन आपकी टिप्पणी ने इस मुद्दे को मजबूत करने में मदद की, और परिणामस्वरूप मैं स्थैतिक कीवर्ड का अधिक उपयोग करूँगा। (अगर मैं कर सकता हूं तो आपको ऊपर उठाऊंगा।) – user1071847
[ग्लोबल्स पर पॉक्स] (http://www.eetimes.com/discussion/break-point/4025723/A-pox-on-globals) आलेख मैंने आपकी पिछली पोस्ट में लिंक किया था इस तकनीक पर भी चर्चा करता है। यह आलेख एम्बेडेड सिस्टम को संदर्भित करता है, लेकिन यह सामान्य उद्देश्य कंप्यूटिंग पर कम लागू नहीं है। मैं यह भी सुझाव दूंगा कि सी ++ आपको कक्षाओं और नामस्थानों के उपयोग से बेहतर डेटा encapsulation के लिए और अवसर प्रदान करता है। इस तरह से स्थैतिक उपयोग के बारे में कुछ सावधानी, यह ठीक है अगर आपको केवल डेटा के एक उदाहरण की आवश्यकता होती है, और इसके परिणामस्वरूप गैर-पुनर्विक्रेता और गैर थ्रेड-सुरक्षित कोड होता है। अन्य समाधान लागू हो सकते हैं। – Clifford