मुझे नहीं लगता कि इसका कारण प्रदर्शन से बहुत अधिक संबंध है, क्योंकि यह इंटरऑपरेबिलिटी है। C ++ भाषा C भाषा की तुलना में अधिक जटिल है, लेकिन प्रदर्शन के दृष्टिकोण से किसी भी तरह से उल्लेखनीय अंतर नहीं होना चाहिए। कुछ C ++ कंस्ट्रक्शन C समतुल्य की तुलना में तेज़ होते हैं ( std::sortकी तुलना में तेज़ होते हैं qsort) और आसपास के दूसरे तरीके के शायद अच्छे उदाहरण हैं।
संपादित करें: अंतर पक्ष पर ...
मूल रूप से, C ++ मानक उन कुछ चीजों को परिभाषित नहीं करता है, जिन्हें अलग-अलग संकलक या संस्करणों के साथ बनाए गए बायनेरिज़ के बीच आसान अंतर के लिए आवश्यक हो सकता है। यहां सबसे उल्लेखनीय मुद्दा बाइनरी में प्रतीकों के लिए नामकरण सम्मेलन होगा। सी में, भाषा कोड के प्रत्येक प्रतीक से द्विआधारी प्रतीक नाम के लिए एकल मानचित्रण को परिभाषित करती है। नामक एक फ़ंक्शन my_functionबाइनरी नामक एक प्रतीक का निर्माण करेगा my_function। दूसरी ओर, और फ़ंक्शन ओवरलोडिंग जैसी सुविधाओं के कारण, C ++ फ़ंक्शन का नाम मंगवाना पड़ता है(बाइनरी में विभिन्न फ़ंक्शन प्रतीकों में अनुवादित, तर्कों के प्रकार एन्कोडिंग और रिटर्न प्रकार), और मानक यह परिभाषित नहीं करता है कि मैनलिंग कैसे किया जाता है। बदले में इसका मतलब है कि C ++ में एक ही फ़ंक्शन को संकलक के आधार पर विभिन्न प्रतीकों के लिए संकलित किया जा सकता है (जब तक extern "C"कि C ++ में उन कार्यों के लिए C इंटरऑपरेबिलिटी को बाध्य करने के लिए उपयोग नहीं किया जाता है)।
दिन के अंत में, स्क्रिप्टिंग भाषा और मूल कोड के बीच इंटरफ़ेस को वैसे भी C इंटरफ़ेस होना चाहिए, भले ही यह आंतरिक रूप से कैसे लागू किया गया हो, का विवरण C / C ++ / कोई अन्य मूल भाषा हो सकती है।
(मैं जानबूझकर भाषा की प्राथमिकताओं के एक लौ युद्ध में प्रवेश नहीं करना चाहता हूं, सी ++ वास्तव में शक्तिशाली है, लेकिन यह थोड़ा डरावना भी है क्योंकि यह सी की तुलना में बहुत अधिक जटिल भाषा है, और कुछ चीजें जो सरल दिखती हैं, उन पर प्रभाव पड़ सकता है। प्रदर्शन)