मैं सोच रहा था कि लोग हेडर फ़ाइलों के नाम पर अपरकेस का उपयोग क्यों नहीं करते हैं। मैं केवल लोअरकेस में नाम के साथ कई शीर्षलेख फाइलें देखता हूं। लेकिन मैंने सोचा कि अगर वे उन्हें "बेसबॉलएसएच", "subclass.h" के बजाय "BaseClass.h", "SubClass.h" कहते हैं, तो उन्हें पढ़ने के लिए और अधिक आसान होगा। ऐसा क्यों है? या यह सिर्फ इतना है कि मैंने जो हेडर फाइलें देखी हैं उन्हें केवल लोअरकेस में नामित किया गया है?सी ++ लोग हेडर फाइलों के नाम पर अपरकेस का उपयोग क्यों नहीं करते हैं?
उत्तर
वहां सिस्टम हैं जो केस-संवेदी (* निक्स) हैं, और ऐसे सिस्टम हैं जो पारंपरिक रूप से केस-असंवेदनशील (विंडोज) हैं।
परिणामस्वरूप, यदि आप * निक्स पर विकसित होते हैं और दो फाइलें बनाते हैं: baseclass.h और BaseClass.h - आपका कोड * निक्स पर ठीक संकलित करेगा, लेकिन इसे विंडोज पर ले जाने पर, यह वहां भी अनपैक नहीं होगा अच्छी तरह।
दूसरी तरफ, यदि आप विंडोज़ पर विकसित होते हैं और '#include "baseclass.h लिखते समय बेस क्लास.h फ़ाइल करते हैं।' - यह केस-असंवेदनशील विंडोज पर संकलित होगा, लेकिन * nix पर संकलित करने में विफल रहेगा।
इन परेशानियों से बचने के लिए, लोअरकेस में सभी फ़ाइल नामों का उपयोग करने के लिए एक अनचाहे (मुझे लगता है) सम्मेलन है - कम से कम यह हर जगह एक ही तरीके से काम करने की गारंटी है। कम से कम आम denominator दृष्टिकोण की तरह, जो बहुत अधिक असुविधा का कारण नहीं है।
इन परेशानियों से बचें हालांकि आपको दूसरों को देता है। जैसे क्यूटी में 'qxsdvalidatinginstancereader.cpp' स्रोत फ़ाइल - क्या आप आसानी से पढ़ते हैं कि यह किस बारे में है? – Ruslan
@Ruslan: validating_instance_reader.cpp उतना ही पठनीय-जैसा-कुछ भी होगा - और कम-मामला भी। दूसरे शब्दों में - अगर कुछ लोग अंडरस्कोर का उपयोग नहीं करना चाहते हैं - मुझे इसे निम्न-मामले की समस्या के रूप में नहीं देखा जाता है ... –
- 1. लोग <CFLOGIN> का उपयोग क्यों नहीं करते हैं?
- 2. सी ++ प्रोजेक्ट में सी फाइलों को संकलित करें जो प्रीकंपील्ड हेडर का उपयोग नहीं करते हैं?
- 3. पर्थ्रेड: लोग pthread_exit का उपयोग क्यों परेशान करते हैं?
- 4. लोग सेटिंग फ़ाइलों का उपयोग करने के बजाय ऐपकॉन्फिग का उपयोग क्यों करते हैं? (.NET)
- 5. लोग OpenGL के दूरस्थ फ़ंक्शन पर sqrt (dot (distanceVector, distanceVector) का उपयोग क्यों करते हैं?
- 6. क्यों कुछ लोग गणित सदस्य के रूप में "कोई नहीं" का उपयोग करते हैं?
- 7. Google और अन्य लोग किस भाषा का उपयोग करते हैं
- 8. लोग क्यों कहते हैं "उपयोग नहीं करें .place()"?
- 9. सी ++ हेडर फाइलों के उपयोग के लिए सर्वोत्तम अभ्यास
- 10. क्यों सी ++ 17 संरचित बाइंडिंग {} का उपयोग नहीं करते हैं?
- 11. लोग कक्षा लोडिंग का उपयोग किसके लिए करते हैं?
- 12. लोअरकेस और अपरकेस फ़ाइल का नाम
- 13. कुछ लोग पत्राचार में Class.method की बजाय कक्षा # विधि का उपयोग क्यों करते हैं?
- 14. सभी लोग अनचाहे नेमस्पेस घोषणाओं का उपयोग क्यों करते हैं (यानी std :: not :: std: :)?
- 15. लोग बुनियादी परिचालनों के लिए jQuery का उपयोग क्यों करते हैं?
- 16. फ़ाइल अपलोड उदाहरण "qqfile" नाम का उपयोग क्यों करते हैं?
- 17. क्यों सभी लोग ViewData से नफरत करते हैं?
- 18. लोग COM प्रोग्रामिंग के लिए एटीएल का उपयोग क्यों करते हैं?
- 19. लोग i ++ के बजाय i = i + 1 का उपयोग क्यों करते हैं?
- 20. लोग आरडीबीएम पर शुद्ध एक्सएमएल डेटाबेस का उपयोग क्यों करेंगे?
- 21. सी # में यूनिकोड क्लास नाम - कुछ काम क्यों करते हैं, जब अन्य नहीं करते हैं?
- 22. django टेम्पलेट्स क्यों नहीं पाइथन कोड का उपयोग करते हैं?
- 23. लोग क्लाउडइनिट का उपयोग करने के बजाय अमेज़ॅन क्लाउड फॉर्मेशन के साथ कठपुतली/शेफ का उपयोग क्यों करते हैं?
- 24. सी में हेडर फाइलों सहित और
- 25. जेएनआई का उपयोग करते समय सी फाइलों के लिए ग्रहण का आश्चर्यजनक व्यवहार, ऐसा क्यों?
- 26. हम क्यों नहीं उपयोग करते हैं == Matlab
- 27. सी ++ हेडर (.h) बनाम हेडर प्लस कार्यान्वयन (.h + .cpp) का उपयोग करके, नुकसान क्या हैं?
- 28. क्यों एसटीएल हेडर फाइलों में कोई एक्सटेंशन नहीं है?
- 29. लोग कुछ * जैसे char * और buf का उपयोग क्यों करते हैं?
- 30. लोग कई jQuery प्लगइन में $ = $ (यह) क्यों असाइन करते हैं?
मैंने दोनों को देखा है। या तो काम करेगा। यह वरीयता का मामला है। मैं हेडर सहित सभी फ़ाइल नामों के लिए लोअरकेस पसंद करता हूं क्योंकि मैं उनका नाम लिखते समय शिफ्ट का उपयोग करने से बच सकता हूं। – user2079303
इस https://www.informit.com/guides/content.aspx?g=cplusplus&seqNum=382 – ANjaNA
को दोबारा दोहराएं "या यह सिर्फ इतना है कि मैंने जो हेडर फाइलें देखी हैं, उन्हें केवल लोअरकेस में नामित किया गया है?" - हाँ। –