में "नेमस्पेस का उपयोग करके" का दायरा सीमित करना मैं एसटीएल का उपयोग कर एक छोटे से व्यक्तिगत सी ++ प्रोजेक्ट पर काम कर रहा हूं। मुझे अपने हेडर फाइलों में सभी जगहों पर "std::
" पसंद नहीं है, क्योंकि मुझे लगता है कि यह पठनीयता में बाधा डालता है, लेकिन साथ ही मैं हेडर फ़ाइल में using namespace std
डालकर खुद को समस्याएं उत्पन्न नहीं करना चाहता हूं।हेडर फ़ाइल
तो मैं वहाँ using
घोषणा के दायरे को सीमित करने का कोई तरीका है, इतना है कि यह मेरी हैडर फ़ाइल की सामग्री पर लागू होता है सोच रहा हूँ, लेकिन फ़ाइलों को शामिल करने के लिए लागू नहीं है। मैंने इस
{
using namespace std;
// header file contents here
}
पर ऐसा लगता है लेकिन ऐसा लगता है कि इस तरह के दायरे को पेश करने की अनुमति किसी फ़ंक्शन परिभाषा के बाहर नहीं है। क्या मेरे पास ऐसा करने का कोई तरीका है?
कृपया ध्यान दें: मुझे वास्तव में यह जानने में कोई दिलचस्पी नहीं है कि यह एक अच्छा विचार है, मैं सिर्फ यह जानना चाहता हूं कि यह किया जा सकता है या नहीं।
मेरा गलत जवाब हटा दिया गया है। क्षमा याचना। आदत से मैं हमेशा शीर्षकों (और यहां तक कि सीपीपी फाइलों में) में नामों को पूरी तरह अर्हता प्राप्त करता हूं। कोड बेस के लिए यह बहुत आम है जो अपने स्वयं के वेक्टर घोषित करते हैं, इसलिए अस्पष्टता से बचने के लिए std :: vector को देखकर यह सहायक होता है। यह यद्यपि आपके प्रश्न का उत्तर देने में मदद नहीं करता है। – M2tM
@ एम 2 टीएम धन्यवाद, कोई समस्या नहीं। – Nathaniel