Hello दोस्तों! आज हम इस पोस्ट में Friend Function in C++ in Hindi (C++ में फ्रेंड फंक्शन क्या है?) के बारें में पढेंगे और इसके example को भी देखेंगे. इसे आप पूरा पढ़िए यह आपको आसानी से समझ में आ जायेगा. तो चलिए शुरू करते हैं:-
Friend Function in C++ in Hindi
C++ में, जब किसी function को friend function के रूप में declare किया जाता है तो एक class के protected और private data को इस function का प्रयोग करके access कर सकते हैं.
आसान शब्दों में कहें तो, “एक friend function एक class के private और protected data को एक्सेस कर सकता है.”
Friend function को friend कीवर्ड का प्रयोग करके class के अंदर declare किया जाता है.
C++ में friend function को कैसे declare करते है?
friend function को हमेशा class की body के अंदर declare करना होता है. इसके लिए friend कीवर्ड का प्रयोग किया जाता है. इसका syntax नीचे दिया गया है.
class className {
... .. ...
friend returnType functionName(arguments);
... .. ...
}
Friend function की विशेषताएं (characteristics)
इसकी विशेषताएं निम्नलिखित होती हैं:-
- फ्रेंड फंक्शन को इसके class के object के द्वारा call नहीं किया जा सकता.
- एक फ्रेंड फंक्शन उस class के scope में नहीं होता है, जिसमें उसे declare किया जाता है.
- इसे किसी object का प्रयोग किये बिना सामान्य function की तरह ही invoke किया जा सकता है.
- यह member names को direct access नहीं कर सकता है और इसे member name के साथ object name और dot operator (.) का प्रयोग करना पड़ता है.
- इसे class के public और private section में कही भी declare किया जा सकता है.
- एक फ्रेंड फंक्शन एक global function या किसी दूसरी class का member हो सकता है.
C++ friend function का example –
#include <iostream>
using namespace std;
class Distance
{
private:
int meter;
public:
Distance(): meter(0){ }
friend int func(Distance); //friend function
};
int func(Distance d) //function definition
{
d.meter=10; //accessing private data from non-member function
return d.meter;
}
int main()
{
Distance D;
cout<<"Distance: "<<func(D);
return 0;
}
इसका आउटपुट –
Distance: 10
ऊपर दिए गये उदाहरण में func() एक friend function है. और यह दोनों private और public data members को access कर सकता है.
- C++ में Access specifier क्या है?
- Polymorphism in C++ in Hindi
Advantage of Friend Function in Hindi
इसके फायदे निम्नलिखित हैं:-
- इसका सबसे बड़ा फायदा यह है कि हम इसके द्वारा किसी class के protected और private data को access कर सकते हैं.
- फ्रेंड फंक्शन को normal function की तरह program में कही भी define किया जा सकता है.
- इसे सामान्य function की तरह बिना objects की सहायता के invoke किया जा सकता है.
- एक function एक से ज्यादा class का friend हो सकता है.
Disadvantage of Friend Function in Hindi
इसके नुकसान नीचे दिए गये हैं:-
- अगर हम program में ज्यादा friend functions का प्रयोग करते हैं तो इससे encapsulation की value घटती है.
- इसमें private data members को access करने के लिए हमें objects को create करने की आवश्यकता होती है.
Friend class in C++ – फ्रेंड क्लास क्या होती है?
एक friend class उस class के private और protected members को access कर सकता है जिसमें उसे friend के रूप में declare किया जाता है.
इसका syntax नीचे दिया गया है:-
class ClassB; class ClassA { // ClassB is a friend class of ClassA friend class ClassB; … .. … } class ClassB { … .. … }
निवेदन:- अगर आपके लिए यह article उपयोगी रहा हो तो इसे अपने friends और classmates के साथ अवश्य share कीजिये. अगर आपके इससे related कोई question हो तो उसे नीचे comment करके बताइए.