C ++ कोड फ़ाइल एक्सटेंशन? .cc बनाम। cpp [बंद]


599

मैंने C ++ कोड को दोनों .ccऔर .cppफ़ाइलों के रूप में सहेजा हुआ देखा है । क्या दोनों के बीच कोई अंतर है?

गूगल स्टाइल गाइड सुझाव देने के लिए लगता है .cc, लेकिन कोई विवरण उपलब्ध कराती है।

मैं मुख्य रूप से लिनक्स सिस्टम पर प्रोग्राम से संबंधित हूं।


85
निष्कर्ष यह कोई फर्क नहीं पड़ता। संभव उत्पत्ति cc = C कक्षाओं के साथ, cpp = C plus plus
Lazer

6
यह ++ से जुड़ा हुआ है। जब आप इसे C। हैडर फ़ाइल देते हैं, तो .h में समाप्त होने वाले नाम के साथ, clang ++ आपको चेतावनी देता है।
एलोयूरकोड

4
एक और उपकरण जो थोड़ी देखभाल करता है वह है एमएसीएस। एक साफ .emacs कॉन्फिग के साथ, (emacs parlance में "खोज") .h फ़ाइल c-mode को सक्रिय करती है, c ++ मोड को नहीं। बेशक, आप कुछ और करने के लिए emacs को कॉन्फ़िगर कर सकते हैं (जैसा कि emacs में सब कुछ के साथ), लेकिन मेरा कहना है कि c- मोड आउट-ऑफ-द-बॉक्स डिफ़ॉल्ट है।
एलोयूरकोड

3
lintपरवाह करता है, .CC ++ है और .cC की समझ नहीं है .ccया जो भी है .cpp। कम से कम AIX 6.1 पर।
जेसी चिशोल्म

5
जवाब "यह कोई फर्क नहीं पड़ता" वास्तव में मदद नहीं करता है। सवाल पूरी तरह से प्रासंगिक है। ओपी को एकजुट रहने के लिए एक ठोस सम्मेलन की तलाश थी। एक बेहतर जवाब होगा: "दुर्भाग्य से, C ++ समुदाय का इस पर ठोस सम्मेलन नहीं है"। यह दुख की बात है, अगर आप इसके बारे में सोचते हैं। अन्य सभी लोकप्रिय भाषाओं में एक एकल, अद्वितीय फ़ाइल एक्सटेंशन है। मैं एक महत्वपूर्ण परियोजना का उपयोग करने के लिए छड़ी करेंगे, जैसे कि जीसीसी। वे उपयोग करते हैं.cc
लुसियो पाइवा

जवाबों:


703

दिन के अंत में यह कोई फर्क नहीं पड़ता क्योंकि C ++ कंपाइलर किसी भी प्रारूप में फाइलों से निपट सकते हैं। यदि यह आपकी टीम के भीतर एक वास्तविक मुद्दा है, तो एक सिक्का फ्लिप करें और वास्तविक काम पर जाएं।


88
खैर, यह एक मान्य बिंदु है, लेकिन यह उपयोगकर्ता के प्रश्न का उत्तर नहीं देता है।
विक्रांत

319
cc टाइप करने में तेज़ है
thang

49
यह स्वीकृत उत्तर क्यों है? एक नए प्रोग्रामर को यह नहीं पता होगा कि इससे कोई फर्क नहीं पड़ता है और वे सीधे जवाब के लायक हैं।
Robben_Ford_Fan_boy

13
एक जिज्ञासु और दिमागदार प्रोग्रामर के लिए इसका जवाब बिल्कुल नहीं है। मुझे इस पृष्ठ पर उत्तर अधिक पसंद हैं क्योंकि इसकी अधिक विस्तृत व्याख्याएँ हैं।
नवंबर को

2
जब कोई समझता है कि संकलक आमतौर पर केवल शामिल उपकरण नहीं है - लगभग हमेशा, वहाँ "बनाने" या इसी तरह की उपयोगिता है जो आपके द्वारा उपयोग किए जाने वाले नियमों का मिलान करने के लिए जो एक्सटेंशन आप उपयोग करते हैं, तो - यह जवाब वास्तव में कोर को संबोधित नहीं करता है प्रश्न की चिंता। ध्यान दें कि सिस्टम और टूलकिन (आपके पसंदीदा बनाने के नियम आदि सहित) में भिन्नताएं हैं जो निर्णय पर प्रभाव डालती हैं। उदाहरण के लिए, डिफ़ॉल्ट पुनरावर्ती मल्टी-टारगेट बिल्ड सिस्टम, QNX 6 श्रृंखला के कुछ विकास प्लेटफॉर्मों में * पिक नहीं करता है। C ++ भाषा स्रोतों के रूप में .cpp फाइलें; यह चाहता है। सी सी
जोजस्टो

296

जीएनयू जीसीसी सी ++ फ़ाइलों के रूप में निम्न में से सभी को पहचानता है, और जीसीसी के माध्यम से यह आह्वान सी ++ संकलन है कि क्या आप का उपयोग किया जाएगा चाहे या जी ++: .C, .cc, .cpp, .CPP, .c++, .cp, या .cxx

ध्यान दें .C- जीसीसी में मामला मायने रखता है, .cएक सी फाइल है जबकि .Cएक सी ++ फाइल है (यदि आप संकलक को यह तय करने देते हैं कि यह क्या है)।

जीसीसी विशेष हैंडलिंग को इंगित करने के लिए अन्य प्रत्ययों का भी समर्थन करता है, उदाहरण के लिए एक .iiफ़ाइल को C ++ के रूप में संकलित किया जाएगा, लेकिन पूर्व-संसाधित नहीं (अलग-अलग पूर्व-संसाधित कोड के लिए)। सभी मान्यता प्राप्त प्रत्यय gcc.gnu.org पर विस्तृत हैं


5
"जीसीसी में मामला मायने रखता है" - विंडोज के बारे में क्या है (क्योंकि यह केस-असंवेदनशील है)?
देवेश खंडेलवाल

17
@ देवेश: विंडोज भी। लेकिन OS आपको केवल केस से अलग किसी फ़ोल्डर में दो फाइल रखने से रोकेगा।
क्लिफोर्ड

23
@DeveshKhandelwal लेकिन यह मामला-संरक्षण है
यत्रार्थ अग्रवाल

229

महान सलाह जिस पर मेकफाइल और अन्य साधनों के लिए उपयोग किया जाता है, गैर-संकलक साधनों पर विचार करते समय यह निर्णय लेना कि किस विस्तार का उपयोग करना है, आपके लिए काम करने वाले उत्तर को खोजने में मदद करने के लिए एक महान दृष्टिकोण है।

मैं बस कुछ .ccबनाम .cppजानकारी के साथ मदद करना चाहता था जो मुझे मिली। निम्नलिखित विभिन्न वातावरणों से टूटे हुए विस्तार हैं ("C ++ प्राइमर प्लस" पुस्तक से):

यूनिक्स का उपयोग करता है: .C, .cc, .cxx,.c

जीएनयू सी ++ का उपयोग करता है: .C, .cc, .cxx, .cpp,.c++

डिजिटल मंगल ग्रह का उपयोग करता है: .cpp,.cxx

बोरलैंड सी ++ का उपयोग करता है: .cpp

वाटकॉम उपयोग करता है: .cpp

माइक्रोसॉफ्ट विजुअल C ++ का उपयोग करता है: .cpp, .cxx,.cc

Metrowerks CodeWarrior का उपयोग करता है: .cpp, .cp, .cc, .cxx,.c++

विभिन्न वातावरण अलग-अलग एक्सटेंशन का समर्थन करते हैं। मैं भी इस सवाल का जवाब ढूंढ रहा था और इस पोस्ट को पाया। इस पोस्ट के आधार पर मुझे लगता है कि मैं के साथ जाना हो सकता है .hppऔर .cppपार मंच / पार उपकरण मान्यता में आसानी के लिए।


5
यह उत्तर वास्तव में प्रस्तुत प्रश्न से निपटने की कोशिश में दूसरों की तुलना में निकटतम है, जो किसी ऐसे व्यक्ति के बारे में है जो एक ठोस सम्मेलन की तलाश में है। अन्य भाषाओं में वह है, लेकिन जहाँ तक फ़ाइल एक्सटेंशन का संबंध है, C ++ में इसकी कमी प्रतीत होती है।
लुसियो पाइवा

6
यूनिक्स किस अर्थ में उपयोग नहीं करता है .cpp?
कीथ थॉम्पसन

vc ++ 6.0 .cc फ़ाइल का समर्थन नहीं करता है।
xus

@KeithThompson के सीकॉक का जवाब यूजर user181548
स्पाईरोस मोलरैटोस

@SpyrosMourelatos हां, लेकिन यह अभी भी मामला है कि यूनिक्स जैसे सिस्टम पर सी ++ कोड आमतौर पर .cppसी ++ स्रोत फ़ाइलों के लिए उपयोग करता है। (उद्धृत उत्तर बताता है कि "cpp", सी प्रीप्रोसेसर के लिए संक्षिप्त नाम है।)
कीथ थॉम्पसन

78

.cppजहाँ तक मुझे पता है C ++ के लिए अनुशंसित एक्सटेंशन है। कुछ लोग .hppC ++ हेडर के लिए भी उपयोग करने की सलाह देते हैं, बस C से अंतर करने के लिए।

हालांकि संकलक को परवाह नहीं है कि आप क्या करते हैं, यह व्यक्तिगत प्राथमिकता है।


60
मैंने c। हेडर के लिए .hpp का उपयोग करने के लिए .h का उपयोग करने से स्विच करने का निर्णय लिया; मुख्य रूप से क्योंकि संपादकों जैसे अन्य उपकरणों को भी जानना आवश्यक है - इसके अलावा जब gcc के साथ precompiled हेडर का उपयोग किया जाता है, तो .h फ़ाइलों और। ++ फ़ाइलों के लिए C का उपयोग करने में चूक करता है। जब तक आप '-x c ++ - शीर्ष लेख' विकल्प का उपयोग नहीं करते हैं। .ह फ़ाइल।
jdkoftinoff

5
@jd। माना। यदि h / c फ़ाइलें hpp / cpp फ़ाइलों में बदल जाती हैं तो यह स्वचालित टूल को एक छोटा सा आसान बना देता है।
पॉल नाथन

4
g ++ पहचानता नहीं है। C ++ हैडर (हेडर प्रीकम्प्लिमेशन के लिए) के रूप में। लेकिन यह क्या करता है। इसके कारण मैंने .cc / .hh ओवर .cpp / .hpp का उपयोग करके समाप्त किया क्योंकि वास्तव में कोई वास्तविक अंतर नहीं है।
चिरकालिक

12
@ पुराने: चूंकि 4.3 gcc पहचानता है ।hpp , gcc.gnu.org/onbuildocs/gcc-4.2.4/gcc/Overall-Options.html की तुलना gcc.gnu.org/oniltocs/gcc4.3.6/gcc/Overall से करें -Options.html
CesarB

3
@CharlesAddis - हाँ, मुझे बहुत सी कोड बदलना था जिसमें "abcd.Hh" और "abcd.hpp" और "abcd.hpp" (सी इंटरफ़ेस) एक ही निर्देशिका में "abcd.hpp" और "abcd.h" थे। "क्योंकि Windows XP या मैक OS X बॉक्स पर" svn co "या अनज़िप करना (डिफ़ॉल्ट फाइल सिस्टम के साथ)" डुप्लिकेट फ़ाइल नामों "के कारण विफल हो जाएगा
jdkoftinoff

37

मैं व्यक्तिगत रूप से .ccकार्यान्वयन फ़ाइलों के लिए एक्सटेंशन का उपयोग करता हूं , .hhहेडर के लिए, और .inlइनलाइन / टेम्प्लेट के लिए।

जैसा कि पहले कहा गया है, यह मुख्य रूप से स्वाद का मामला है।

जो मैंने देखा है , .ccउससे अधिक " ओपन सोर्स प्रोजेक्ट्स ओरिएंटेड " लगता है, क्योंकि यह कुछ महान ओपन सोर्स सॉफ्टवेयर कोडिंग स्टाइल में सलाह दी जाती है, जबकि। cppअधिक Windowish लगता है।

--- संपादित करें

जैसा कि उल्लेख किया गया है, यह "जो मैंने देखा है उससे है" , यह गलत हो सकता है। यह सिर्फ इतना है कि मैंने जितने भी विंडोज प्रोजेक्ट्स पर काम किया है .cpp, और बहुत सारे ओपन सोर्स प्रोजेक्ट्स (जो मुख्य रूप से यूनिक्स-लाइक पर हैं) का उपयोग करते हैं .cc

निम्नलिखित शैलियों का उपयोग करते हुए कोडिंग शैली .cc:


1
क्या आपके पास इसका संदर्भ है? मैंने कभी भी OSS .cc बनाम Windows .cpp
bobby

6
Visual Studio C ++ के लिए .cpp फ़ाइलें बनाता है। मैं इसके पीछे के इतिहास को नहीं जानता।
नटन येलिन

7
LLVM कोडिंग मानक .cpp / .h की वकालत करने लगता है और -*- C++ -*-हेडर llvm.org/docs/CodingStandards.html में टैग लगाता है ; मोज़िला कोडिंग स्टाइल का सुझाव है .cpp / .h developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/… ; केडीई का उपयोग करता प्रतीत होता है .cpp / .h too quickgit.kde.org
sastanin

19

अन्य फ़ाइल एक्सटेंशन में शामिल हैं .cxxऔर .C(राजधानी सी)। मेरा मानना ​​है कि ब्रेज़ेन स्ट्रॉस्ट्रुप .Cमूल रूप से इस्तेमाल किया गया था। .cppC प्रीप्रोसेसर का नाम है, इसलिए यह दुर्भाग्यपूर्ण है कि इसका उपयोग C ++ के लिए भी किया गया था।


13

दूसरा विकल्प वह है .cxxजहां xमाना जाता है कि इसे 45 ° घुमाया जाना चाहिए।

विंडोज, मैक और लिनक्स सभी समर्थन करते हैं .c++इसलिए हमें बस इसका उपयोग करना चाहिए।


12

कई लोग कह रहे हैं कि .ccकुछ भी नहीं है? ये हो सकता है। C ++ ने "C with Classes" के रूप में जीवन शुरू किया।

यह सच है कि .ccऔर .cppअधिकांश यूनिक्स सिस्टम (क्रमशः सी कंपाइलर और सी प्रीप्रोसेसर) पर नाम भी हैं।

मैं .cppविशेष रूप से उपयोग करता हूं , लेकिन मैंने विंडोज पर शुरू किया। .ccअधिक यूनिक्स सम्मेलन है, हालांकि मैं इसे कम और वहां भी कम देखता हूं। GNU मेक के लिए नियम हैं, .cppजो शायद पसंद किया जाता है, यह विंडोज और बाकी सभी चीजों पर डिफ़ॉल्ट रूप से काम करेगा। दूसरी ओर आधुनिक C ++ हेडर के लिए बिल्कुल भी कोई एक्सटेंशन का उपयोग नहीं करता है, मुझे वास्तव में यह पसंद नहीं है। मेरी सभी परियोजनाएं .hहेडर फ़ाइलों के लिए उपयोग करती हैं , और वे C और C ++ दोनों का यथासंभव समर्थन extern "C"और परीक्षण करते हैं __cplusplus


2
क्या ऐसा नहीं होना चाहिए .cwc तब? :)
जोशुआ

कई कंपाइलर नेमस्पेस को सपोर्ट करने से पहले, स्टैंडर्ड हेडर के लिए .h एक्सटेंशन का भी इस्तेमाल किया। आमतौर पर, संकलक पदावनत .h संस्करण प्रदान करते हैं जो पुस्तकालय को वैश्विक नामस्थान में रखते हैं। यह विरासत कोड के समर्थन की अनुमति देता है। मैंने एक बार कहीं पढ़ा है कि उनके पास .h एक्सटेंशन नहीं होने का कारण यह है कि मानक उन्हें फाइल नहीं करने देता है, लेकिन अनिवार्य रूप से 'बिल्ट-इन' है। हालाँकि यह एपोक्रिफल हो सकता है।
क्लिफोर्ड

11

बस प्रोजेक्ट / टीम द्वारा उपयोग किए जा रहे सम्मेलन का पालन करें।


11

मैंने व्यक्तिगत रूप से कभी .ccभी किसी भी परियोजना में नहीं देखा है जो मैंने काम किया है, लेकिन सभी तकनीकीता में संकलक परवाह नहीं करेगा।

कौन परवाह करेगा कि आपके स्रोत पर काम करने वाले डेवलपर्स हैं, इसलिए मेरे अंगूठे का नियम यह है कि आपकी टीम के साथ क्या सहज है। यदि आपकी "टीम" ओपन सोर्स कम्युनिटी है, तो बहुत ही सामान्य चीज़ों के साथ जाएं, जिसमें .cppसे वह पसंदीदा है।


कई प्रसिद्ध परियोजनाएं जैसे github.com/google/googletest.cc एक फ़ाइल एक्सटेंशन für C ++ कार्यान्वयन फ़ाइलों के रूप में उपयोग कर रही हैं
Vertexwahn

10

अधिकांश शैली सम्मेलनों के साथ, केवल दो चीजें हैं जो मायने रखती हैं:

  1. जहाँ भी संभव हो, जो आप उपयोग करते हैं, उसके अनुरूप रहें।
  2. ऐसी किसी भी चीज़ को डिज़ाइन न करें जो किसी विशिष्ट पसंद पर निर्भर करती है।

वे विरोधाभासी लग सकते हैं, लेकिन उनके पास प्रत्येक अपने स्वयं के कारणों के लिए मूल्य है।


8

.Cऔर .cc(कुछ) यूनिक्स-उन्मुख C ++ कार्यक्रमों के लिए मानक प्रतीत हो रहा है। मैंने हमेशा .cppखुद का उपयोग किया है, क्योंकि मैं केवल विंडोज पर काम करता हूं और हमेशा की तरह वहां भी यही मानक रहा है।

मैं .cppव्यक्तिगत रूप से सलाह देता हूं , क्योंकि ... यह "सी प्लस प्लस" के लिए है। यह पाठ्यक्रम जैविक रूप से महत्वपूर्ण है कि फ़ाइल एक्सटेंशन के संक्षिप्त रूप हैं की है, लेकिन इस तर्क अपर्याप्त साबित करना चाहिए सम्मोहक अन्य महत्वपूर्ण बातें shift कुंजी की गैर-उपयोग कर रहे हैं (जो बाहर नियमों .Cऔर .c++) और नियमित अभिव्यक्ति अक्षरों से परे का परिहार जहां संभव हो (जो बाहर नियम .c++- दुर्भाग्य से आप वास्तव .में पाठ्यक्रम से बच नहीं सकते ।)

इससे इंकार नहीं किया जाता है .cc, भले ही यह वास्तव में किसी भी चीज़ के लिए खड़ा न हो (या करता है?) यह शायद लिनक्स-उन्मुख कोड के लिए एक अच्छा विकल्प है।


2
लेकिन "सीपी" भी "सी प्रीप्रोसेसर" के लिए खड़ा हो सकता है। वास्तव में, आपके सिस्टम पर प्रोग्राम "सीपीपी" सबसे अधिक संभावना है कि सी प्रीप्रोसेसर ...
जेसपर

8

मैंने क्रमशः .C और .h का उपयोग स्रोत और हेडर के लिए किया है। उस चुनाव के साथ एक अच्छी बात यह है कि कमांड लाइन पर, *.[Ch]सभी कोड फ़ाइलों का चयन करने के लिए इसका उपयोग करना आसान है। .Cकेस असंवेदनशील फाइल सिस्टम पर समस्या का उपयोग करना हो सकता है, लेकिन यदि आपके पास foo.cऔर foo.Cउसी निर्देशिका में है, तो आप इसके लायक हैं जो आपको वैसे भी मिलते हैं :)


8

.Fcc एक्सटेंशन मेकफाइल्स के भीतर निहित नियमों का उपयोग करने के लिए आवश्यक है। Makefiles की बेहतर समझ प्राप्त करने के लिए इन लिंक के माध्यम से देखें, लेकिन मुख्य रूप से दूसरे को देखें, क्योंकि यह स्पष्ट रूप से कहता है ।cc एक्सटेंशन की उपयोगिता:

ftp://ftp.gnu.org/old-gnu/Manuals/make-3.79.1/html_chapter/make_2.html

https://ftp.gnu.org/old-gnu/Manuals/make-3.79.1/html_chapter/make_10.html

मुझे अभी यह पता चला है।


फिर से वे सिर्फ .cppफाइलें हैं। कोई चिंता नहीं ! :-)
टॉम टेलर

1
यह कहता है "हम आपको .C 'के बजाय C ++ स्रोत फ़ाइलों के लिए प्रत्यय' .cc 'का उपयोग करने के लिए प्रोत्साहित करते हैं।" मुझे संदेह है कि यह केवल खराब शब्द है। .Cकेस-असंवेदनशील फाइल सिस्टम के साथ सिस्टम पर समस्याग्रस्त का उपयोग कर सकते हैं। मुझे नहीं लगता कि इसका कोई विशेष लाभ है, जहाँ तक makeइसका उपयोग .ccकरने की बात है .cpp, उदाहरण के लिए। Makefiles .cppC ++ स्रोत फ़ाइलों के साथ ठीक काम करते हैं ।
कीथ थॉम्पसन

7

इससे कोई फर्क नहीं पड़ता कि आप उन एक्सटेंशनों में से किसका उपयोग करेंगे। जो भी आपको अधिक पसंद हो, नामकरण के अनुरूप हो। एकमात्र अपवाद जो मुझे इस नामकरण सम्मेलन के साथ पता है कि मैं फ़ाइलों को संकलित करने के लिए WinDDK(या WDKअब ऐसा नहीं है?) कर सकता हूं .cc। लिनक्स पर हालांकि यह मुश्किल से एक समस्या है।


6

मैं एक नया C ++ प्रोजेक्ट शुरू कर रहा हूं और C ++ स्टाइल में नवीनतम की तलाश शुरू कर रहा हूं। मैं फ़ाइल नामकरण के बारे में यहाँ समाप्त हो गया और मैंने सोचा कि मैं अपनी पसंद के साथ कैसे आऊंगा। यहाँ जाता हैं:

स्ट्रॉस्ट्रप इसे एक तकनीकी विचार की तुलना में अधिक व्यावसायिक विचार के रूप में देखता है ।

उनकी सलाह के बाद, आइए देखें कि टूलचिन क्या उम्मीद करते हैं।

UNIX / Linux के लिए, आप निम्न डिफ़ॉल्ट GNU नियम बना सकते हैं .cc फ़ाइल नाम प्रत्यय के पक्ष में नियम बना सकते हैं, क्योंकि .cpp और .C नियम सिर्फ उपनाम हैं।

$ make -p | egrep COMPILE[^=]+=
COMPILE.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c
COMPILE.cpp = $(COMPILE.cc)
COMPILE.C = $(COMPILE.cc)

(नोट: कोई डिफ़ॉल्ट COMPILE.cxx उपनाम नहीं है)

इसलिए यदि आप UNIX / Linux को लक्षित कर रहे हैं, तो .cc और .cpp दोनों ही बहुत अच्छे विकल्प हैं।

विंडोज को लक्षित करते समय, आप .C के साथ परेशानी की तलाश कर रहे हैं, क्योंकि इसकी फाइल सिस्टम केस-असंवेदनशील है। और आपके लिए यह नोट करना महत्वपूर्ण हो सकता है कि Visual Studio .cpp प्रत्यय का पक्षधर है

MacOS को लक्षित करते समय, ध्यान दें कि Xcode पसंद करता है। .cpp / .hpp (Xcode 10.1 पर जांचा जाता है)। आप हमेशा .h प्रयोग करने के लिए हेडर टेम्पलेट बदल सकते हैं।

इसके लायक क्या है, आप अपने निर्णय को उन आधार आधारों पर भी आधार बना सकते हैं जिन्हें आप पसंद करते हैं। Google उदाहरण के लिए .cc और LLVM libc ++ का उपयोग करता है।

हेडर फ़ाइलों के बारे में क्या? उन्हें C या C ++ फ़ाइल के संदर्भ में संकलित किया गया है, इसलिए कोई भी कंपाइलर या बिल्ड सिस्टम .hpp से .h को अलग करने की आवश्यकता नहीं है। आपके संपादक / आईडीई द्वारा सिंटैक्स हाइलाइटिंग और स्वचालित इंडेंटेशन एक मुद्दा हो सकता है, लेकिन यह सभी .h फ़ाइलों को C ++ मोड के साथ जोड़ने के लिए निश्चित है। एक उदाहरण के रूप में, लिनक्स पर मेरा एमएसीएस विन्यास सी। ++ मोड में सभी .h फ़ाइलों को लोड करता है और यह सी हेडर को ठीक करता है। इसके अलावा, C और C ++ को मिलाते समय, आप इस सलाह का पालन कर सकते हैं ।

मेरा व्यक्तिगत निष्कर्ष : .cpp / .h कम से कम प्रतिरोध का मार्ग है।


3

जैसा कि दूसरों ने मुझसे पहले लिखा था, इसके अंत में जो आपके प्रोजेक्ट / टीम / कंपनी द्वारा उपयोग किया जा रहा है।

व्यक्तिगत रूप से, मैं ccएक्सटेंशन का उपयोग नहीं कर रहा हूं, मैं एक्सटेंशन की संख्या कम करने और उन्हें बढ़ाने की कोशिश नहीं कर रहा हूं, जब तक कि एक स्पष्ट मूल्य नहीं है (मेरी राय में)।

इसके लायक क्या है, यह मैं उपयोग कर रहा हूं :

c - केवल शुद्ध सी कोड, विधियों के साथ कोई वर्ग या संरचना नहीं।

cpp - सी ++ कोड

hpp- हेडर्स केवल कोड। कार्यान्वयन हेडर में हैं (जैसे टेम्पलेट क्लासेस)

h- C / C ++ दोनों के लिए हैडर फाइलें। मैं मानता हूं कि एक और अंतर किया जा सकता है, लेकिन जैसा कि मैंने लिखा है, मैं सादगी के लिए एक्सटेंशन की संख्या कम करने की कोशिश कर रहा हूं। कम से कम C ++ प्रोजेक्ट्स में मैंने काम किया है, hशुद्ध-सी के लिए फाइलें अधिक दुर्लभ हैं, इसलिए मैं एक और एक्सटेंशन नहीं जोड़ना चाहता था।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.