हेयर यू गो:
#include <iostream>
int main()
{
std::endl(std::operator<<(std::cout, "Hello world!"));
}
इसे इस तरह से लिखने से, हम निर्देशों और घोषणाओं का उपयोग करने के साथ-साथ एडीएल त्रुटि से बचते हैं।
यह एक व्यंग्यात्मक उत्तर है। :-D
मैं इस पर Google पर हर्ब सटर के साथ हूं। C ++ कोडिंग मानकों से:
आप कर सकते हैं और चाहिए घोषणाओं का उपयोग कर नाम स्थान का उपयोग और निर्देशों # शामिल निर्देशों और इसके बारे में लग रहा है अच्छा करने के बाद अपने कार्यान्वयन फाइलों में उदारतापूर्वक। इसके विपरीत बार-बार कहने के बावजूद, घोषणाओं और निर्देशों का उपयोग करने वाले नाम स्थान बुराई नहीं हैं और वे नाम स्थान के उद्देश्य को नहीं हराते हैं। बल्कि, वे हैं जो नामस्थानों को प्रयोग करने योग्य बनाते हैं ।
आप संभावित नामस्थान संघर्षों के बारे में जुनूनी हो सकते हैं जो शायद कभी प्रकट नहीं होंगे और शायद इस तरह के एक खगोलीय दुर्लभ घटना को ठीक से using
निर्देशन से बचने और स्पष्ट रूप से प्रत्येक और हर चीज जिसे आप उपयोग करते हैं (ऑपरेटरों के लिए) using
घोषणाओं से निर्दिष्ट करके , या बस आगे बढ़ो और शुरू करो using namespace std
। मैं उत्पादकता के दृष्टिकोण से उत्तरार्द्ध की सिफारिश करता हूं।
ज्यादातर सी ++ टेक्स्ट बुक्स नामस्थान एसटीडी का उपयोग करने के साथ शुरुआती सिखाती हैं; क्या वे खराब कोडिंग अभ्यास का प्रचार कर रहे हैं?
यदि आप मुझसे पूछते हैं तो विपरीत है, और मेरा मानना है कि सटर सहमत हैं।
अब, मेरे करियर के दौरान, मुझे using
LOC के लाखों लोगों के दसियों तक के कोडबेस में निर्देशों के प्रत्यक्ष परिणाम के रूप में कुल 3 नामस्थान संघर्षों का सामना करना पड़ा है । हालांकि, सभी 3 मामलों में, वे स्रोत फ़ाइलों में थे, जो विरासत कोड की 50,000 से अधिक पंक्तियों में फैली हुई थीं, मूल रूप से सी में लिखी गई थीं और फिर सी ++ में कमी की गई थीं, एक दर्जन अलग-अलग पुस्तकालयों के हेडर सहित असमान कार्यों की एक विशाल उदार सूची का प्रदर्शन किया और किया। #includes
उस पृष्ठ की एक पृष्ठ पर एक महाकाव्य सूची । महाकाव्य गड़बड़ी के बावजूद, वे ठीक करने में बहुत मुश्किल नहीं थे क्योंकि वे OSX (एक ओएस जहां कोड बनाने में विफल रहे थे) पर त्रुटियों का कारण बना, रनटाइम बग नहीं। इस बुरे सपने को अपने कोड को व्यवस्थित न करें और आपको ठीक होना चाहिए।
उस ने कहा, हेडर फ़ाइलों में निर्देशों और घोषणाओं दोनों से बचें using
। वह सिर्फ सादा है। लेकिन स्रोत फ़ाइलों के लिए, और विशेष रूप से उन लोगों के लिए, जिनके पास #include
निर्देशों से भरा एक पूरा पृष्ठ नहीं है , मैं कहूंगा कि यदि आप Google के लिए काम नहीं कर रहे हैं तो यह पसीना नहीं बहाएगा।