Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

सी ++ में इनलाइन कार्यों के लाभ?

सी ++ इनलाइन फ़ंक्शन एक शक्तिशाली अवधारणा है जिसे आमतौर पर कक्षाओं के साथ प्रयोग किया जाता है। यदि कोई फ़ंक्शन इनलाइन है, तो कंपाइलर उस फ़ंक्शन के कोड की एक प्रति प्रत्येक बिंदु पर रखता है जहां फ़ंक्शन को संकलन समय पर कहा जाता है।

इनलाइन फ़ंक्शन में किसी भी परिवर्तन के लिए फ़ंक्शन के सभी क्लाइंट को पुन:संकलित करने की आवश्यकता हो सकती है क्योंकि कंपाइलर को सभी कोड को एक बार फिर से बदलने की आवश्यकता होगी अन्यथा यह पुरानी कार्यक्षमता के साथ जारी रहेगा।

किसी फ़ंक्शन को इनलाइन करने के लिए, फ़ंक्शन नाम से पहले कीवर्ड इनलाइन रखें और फ़ंक्शन पर कोई कॉल किए जाने से पहले फ़ंक्शन को परिभाषित करें। यदि परिभाषित फ़ंक्शन एक पंक्ति से अधिक है, तो कंपाइलर इनलाइन क्वालीफायर को अनदेखा कर सकता है।

एक वर्ग परिभाषा में एक फ़ंक्शन परिभाषा एक इनलाइन फ़ंक्शन परिभाषा है, यहां तक ​​कि इनलाइन विनिर्देशक के उपयोग के बिना भी।

निम्नलिखित एक उदाहरण है, जो अधिकतम दो संख्याओं को वापस करने के लिए इनलाइन फ़ंक्शन का उपयोग करता है -

उदाहरण

#include <iostream>
using namespace std;
inline int Max(int x, int y) {
   return (x > y)? x : y;
}
// Main function for the program
int main() {
   cout << "Max (20,10): " << Max(20,10) << endl;
   cout << "Max (0,200): " << Max(0,200) << endl;
   cout << "Max (100,1010): " << Max(100,1010) << endl;
   return 0;
}

आउटपुट

Max (20,10): 20
Max (0,200): 200
Max (100,1010): 1010

अब देखते हैं, हमारे कोड में इनलाइन फ़ंक्शंस का उपयोग करने के क्या लाभ हैं -

  • यहां फंक्शन कॉल ओवरहेड नहीं होता है।

  • जब फ़ंक्शन को कॉल किया जाता है, तो यह स्टैक पर पुश और पॉप वेरिएबल्स के ऊपरी हिस्से को बचाता है।

  • यह किसी फ़ंक्शन से रिटर्न कॉल के ऊपरी हिस्से को बचाता है।

  • जब एक इनलाइन फ़ंक्शन बनाया जाता है, तो कंपाइलर फ़ंक्शन के मुख्य भाग पर संदर्भ-विशिष्ट अनुकूलन कर सकता है। इस प्रकार के अनुकूलन सामान्य कार्यों के लिए नहीं किए जाते हैं।

  • छोटे इनलाइन फ़ंक्शन का उपयोग एम्बेडेड सिस्टम के लिए उपयोगी हो सकता है, क्योंकि इनलाइन फ़ंक्शन कॉल प्रस्तावना और वापसी से कम कोड उत्पन्न कर सकता है।


  1. C++ में इनलाइन फंक्शन्स

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

  1. सी ++ में लॉग () फ़ंक्शन

    C/C++ लाइब्रेरी फ़ंक्शन डबल लॉग (डबल x) x का प्राकृतिक लघुगणक (बेसेलोगैरिथम) देता है। लॉग () फ़ंक्शन के लिए घोषणा निम्नलिखित है। double log(double x) पैरामीटर एक फ़्लोटिंग पॉइंट मान है। और यह फ़ंक्शन x का प्राकृतिक लघुगणक लौटाता है। उदाहरण #include <iostream> #include <cmath> using name

  1. सी ++ में स्वैप () फ़ंक्शन

    स्वैप () फ़ंक्शन का उपयोग दो नंबरों को स्वैप करने के लिए किया जाता है। इस फ़ंक्शन का उपयोग करके, आपको दो नंबरों को स्वैप करने के लिए किसी तीसरे चर की आवश्यकता नहीं है। यहाँ C++ भाषा में स्वैप () का सिंटैक्स दिया गया है, void swap(int variable_name1, int variable_name2); यदि हम वेरिएबल को मान असाइन