Advanced-Cpp/C2/Function-Overloading-And-Overriding/Hindi

From Script | Spoken-Tutorial
Jump to: navigation, search
Time Narration
00:01 C++ में function Overloading और Overriding के स्पोकन ट्यूटोरियल में आपका स्वागत है।
00:09 इस ट्यूटोरियल में हम निम्न सीखेंगे,
00:11 'फंक्शन ओवरलोडिंगफंक्शन ओवर्राइडिंग'
00:14 हम यह उदाहरणों की मदद से करेंगे।
00:18 इस ट्यूटोरियल को रिकॉर्ड करने के लिए, मैं उपयोग कर रही हूँ,
00:21 'उबन्टु OS' वर्जन 11.10
00:26 'g++ कम्पाइलर' वर्जन 4.6.1
00:30 'फंक्शन ओवरलोडिंग' के परिचय के साथ शुरू करते हैं।
00:34 'फंक्शन ओवरलोडिंग' का मतलब है दो या अधिक फंक्शन्स समान नाम रख सकते हैं।
00:41 'आर्ग्युमेंट्स' की संख्या और 'आर्ग्युमेंट्स' के 'डेटा-टाइप' भिन्न होंगे।
00:47 जब एक 'फंक्शन' कॉल होता है तो यह आर्ग्यूमेंट की सूची के आधार पर चुना जाता है।
00:53 अब एक उदाहरण देखते हैं।
00:56 मैंने एडिटर पर कोड पहले ही टाइप कर लिया है।
00:59 इस प्रोग्राम में हम एडिशन ऑपरेशंस क्रियान्वित करेंगे।
01:03 ध्यान दें हमारी फाइल नेम 'overload.cpp' है।
01:08 मैं अभी कोड समझाऊंगी।
01:10 यह 'iostream' हमारी हैडर फाइल है।
01:13 यहाँ मैं 'std namespace' प्रयोग कर रही हूँ।
01:17 फिर हमारे पास 'int' की तरह परिभाषित 'add' फंक्शन है।
01:21 इसमें हमने तीन आर्ग्यूमेंट्स पास किये हैं।
01:24 'Int a, int b और int c;'
01:28 फिर हम तीन नंबर्स का एडिशन क्रियान्वित करते हैं और हम 'वैल्यू' 'रिटर्न' करते हैं।
01:33 यहाँ हम फंक्शन 'add(ऐड)' ओवरलोड करते हैं।
01:36 यह 'float (फ्लोट)' की तरह घोषित किया गया है।
01:38 हम दो आर्ग्यूमेंट्स 'float d' और 'float e' पास करते हैं।
01:44 फिर हम दो नंबर्स पर एडिशन ऑपरेशन करते हैं।
01:48 यह हमारा 'main' फंक्शन है।
01:50 'फंक्शन' 'मेन' में हम भिन्न 'आर्ग्यूमेंट्स' के साथ 'ऐड' 'फंक्शन' घोषित करते हैं।
01:56 फिर हम 'वेरिएबल्स' घोषित करते हैं।
01:58 यहाँ हम यूज़र से इंटीजर वैल्यूज़ लेते हैं।
02:03 फिर हम तीन आर्ग्यूमेंट्स के साथ फंक्शन 'ऐड' कॉल करते हैं।
02:07 और परिणाम को वेरिएबल 'sum (सम)' में संचित करते हैं।
02:09 यहाँ हम परिणाम को प्रिंट करते हैं।
02:12 अब यहाँ हम यूज़र से फ्लोटिंग पॉइंट नंबर्स लेते हैं।
02:17 फिर हम दो आर्ग्यूमेंट्स के साथ add (ऐड) फंक्शन कॉल करते हैं।
02:21 और यहाँ हम 'sum (सम)' प्रिंट करते हैं।
02:23 और यह हमारा 'रिटर्न' स्टेटमेंट है।
02:26 अब हम प्रोग्राम निष्पादित करते हैं।
02:29 अपने कीबोर्ड पर एक साथ 'Ctrl, Alt और T' कीज़ दबाकर टर्मिनल खोलें।
02:38 निष्पादित करने के लिए, टाइप करें 'g++ स्पेस overload डॉट cpp स्पेस hyphen o स्पेस over'
02:49 एंटर दबाएं।
02:51 टाइप करें 'dot slash over'
02:53 एंटर दबाएं।
02:55 'Enter three integers' प्रदर्शित होता है।
02:58 मैं '10', '25' और '48' एंटर करुँगी।
03:04 आउटपुट इस प्रकार प्रदर्शित होता है: 'Sum of integers is 83'
03:09 अब हम देखते हैं: 'Enter two floating point numbers'
03:13 मैं '4.5' और '8.9' एंटर करुँगी।
03:17 एंटर दबाएं।
03:19 आउटपुट इस प्रकार प्रदर्शित होता है:

'Sum of floating point numbers is 13.4'

03:25 अब हम 'फंक्शन ओवर्राइडिंग' देखेंगे।
03:29 अब अपनी स्लाइड्स पर वापस जाते हैं।
03:31 'base class (बेस क्लास)' 'फंक्शन' को डिराइव्ड क्लास में पुनः परिभाषित करना।
03:36 डिराइव्ड क्लास फंक्शन बेस क्लास फंक्शन को ओवर्राइड करता हैं।
03:40 लेकिन पास किये हुए 'आर्ग्यूमेंट्स' समान हैं।
03:44 और रिटर्न-टाइप भी समान है।
03:47 अब एक उदाहरण देखते हैं।
03:49 यहाँ फंक्शन 'Overriding (ओवर्राइडिंग)' का एक उदाहरण है।
03:53 ध्यान दें हमारा फाइल नेम 'override.cpp' है।
03:57 अब पूरे कोड को समझते हैं।
04:00 यह 'iostream' हमारी हैडर फाइल है।
04:03 यहाँ मैं 'std namespace' प्रयोग कर रही हूँ।
04:06 फिर हमारे पास 'क्लास arithmetic' है।
04:09 इसमें हमने 'protected' की तरह इंटीजर वेरिएबल्स घोषित किये हैं।
04:14 फिर हमारे पास 'public' की तरह घोषित 'फंक्शन वैल्यूज़' हैं।
04:18 इनमें हमने दो आर्ग्यूमेंट्स 'int x' और 'int y' पास किये हैं।
04:23 फिर हमने वैल्यू 'a' और 'b' संचित कीं।
04:26 यहाँ हमारे पास 'ऑपरेशंस' की तरह 'virtual function' है।
04:30 इसमे हम दो नंबर्स एड करते हैं और 'सम' प्रिंट करते हैं।
04:34 यहाँ हम क्लास बंद करते हैं।
04:37 अब हमारे पास 'डिराइव्ड क्लास' की तरह 'क्लास Subtract' है।
04:41 यह 'बेस क्लास arithmetic' को इन्हेरिट करता है।
04:45 इसमें हम दो नंबर्स के डिफरेंस की गणना करते हैं और डिफरेंस प्रिंट करते हैं।
04:50 अब हमारे पास 'Multiply' की तरह एक अन्य 'डिराइव्ड क्लास' है।
04:54 यह भी 'बेस क्लास arithmetic' को इन्हेरिट करता है।
04:57 इसमें हम दो नंबर्स के प्रोडक्ट की गणना करते हैं और प्रोडक्ट प्रदर्शित करते हैं।
05:03 फिर हमारे पास 'क्लास Divide' है, यह भी 'बेस क्लास arithmetic' को इन्हेरिट करता है।
05:09 इसमें हम दो नंबर्स के डिवीज़न की गणना करते हैं और हम डिवीज़न प्रदर्शित करते हैं।
05:15 ध्यान दें फंक्शन का रिटर्न टाइप समान है और पास किये हुए आर्ग्यूमेंट्स भी समान हैं।
05:23 अब यह हमारा 'मेन फंक्शन' है।
05:26 इसमें हम 'क्लास arithmetic' का एक 'ऑब्जेक्ट' 'p' बनाते हैं।
05:31 'arith' 'क्लास arithmetic' का पॉइंटर है।
05:35 फिर हमारे पास 'क्लास Subtract' का 'subt ऑब्जेक्ट' है।
05:39 'क्लास Multiply' का 'mult ऑब्जेक्ट'
05:42 और 'क्लास Divide' का 'divd ऑब्जेक्ट' .
05:46 अब यहाँ, 'p' को 'arith' के एड्रेस पर सेट किया जाता है।
05:50 फिर हम 'फंक्शन वैल्यूज़' में आर्ग्युमेंट्स 30 और 12 हैं।
05:56 अब हम 'फंक्शन ऑपरेशंस' कॉल करते हैं।
05:59 यह एडिशन ऑपरेशन करेगा।
06:02 यहाँ हम 'subt' को 'arith' के एड्रेस पर सेट करते हैं।
06:07 और हम 'आर्ग्यूमेंट्स' 42 और 5 पास करते हैं।
06:11 हम 'फंक्शन ऑपरेशंस' को दोबारा कॉल करते हैं।
06:14 यह दो नंबर्स का सब्ट्रैक्शन करेगा।
06:18 अब, हम 'mult' को 'arith' के एड्रेस पर सेट करते हैं।
06:22 और हम आर्ग्यूमेंट्स 6 और 5 पास करते हैं।
06:26 हम 'फंक्शन ऑपरेशंस' कॉल करते हैं।
06:29 यह दो नंबर्स का मल्टिप्लिकेशन करेगा।
06:33 अंत में हम 'divd' को 'arith' के एड्रेस पर सेट करते हैं। और हम आर्ग्यूमेंट्स 6 और 3 पास करते हैं।
06:41 अब हम ऑपरेशंस 'फंक्शन्स' कॉल करते हैं।
06:44 यह दो नंबर्स का डिवीज़न करेगा।
06:48 और यह हमारा 'रिटर्न स्टेटमेंट' है।
06:50 अब प्रोग्राम निष्पादित करते हैं। अपने टर्मिनल पर वापस आते हैं।
06:54 टाइप करें 'g++ स्पेस override डॉट cpp स्पेस hyphen o स्पेस over2'
07:04 एंटर दबाएं।
07:06 टाइप करें: 'dot slash over2'
07:09 एंटर दबाएं।
07:11 आउटपुट इस प्रकार दिखता है
07:13 'Addition of two numbers is 42'
07:16 'Difference of two numbers is 37'
07:19 'Product of two numbers is 30' और 'Division of two numbers is 2'
07:25 अब अपनी स्लाइड्स पर वापस जाते हैं।
07:27 अब 'ओवरलोडिंग' और 'ओवर्राइडिंग' के बीच अंतर देखते हैं।
07:31 'ओवरलोडिंग' इन्हेरिटेन्स के बिना हो सकती है।
07:35 'ओवर्राइडिंग' होती है जब एक क्लास दूसरी से इन्हेरिट की जाती है।
07:41 'ओवरलोडिंग' में आर्ग्यूमेंट्स और रिटर्न-टाइप भिन्न होने ही चाहिए।
07:46 'ओवर्राइडिंग' में आर्ग्यूमेंट्स और रिटर्न-टाइप समान होने ही चाहिए।
07:51 'ओवरलोडिंग' में फंक्शन के नाम समान होते हैं।
07:55 लेकिन यह उनको पास किये गए आर्ग्यूमेंट्स के आधार पर भिन्न व्यवहार करता है।
08:01 'ओवर्राइडिंग' में फंक्शन का नाम समान होता है।
08:05 'डिराइव्ड क्लास' फंक्शन बेस क्लास से भिन्न ऑपरेशन्स क्रियान्वित कर सकता है।
08:11 इसको सारांशित करते हैं।
08:13 इस ट्यूटोरियल में हमने सीखा
08:15 'फंक्शन ओवरलोडिंग'
08:16 उदाहरण int add तीन भिन्न आर्ग्यूमेंट्स के साथ और
08:21 float add दो भिन्न आर्ग्यूमेंट्स के साथ।
08:24 'फंक्शन ओवर्राइडिंग'
08:26 उदाहरण वर्चुअल int ऑपरेशंस ()और int ऑपरेशंस ()
08:31 समान आर्ग्युमेंट और समान रिटर्न टाइप के साथ फंक्शन्स और दोनों के बीच अंतर।
08:38 एक नियत कार्य में
08:39 एक प्रोग्राम लिखें जो फंक्शन ओवरलोडिंग उपयोग करके रेक्टेंगल, स्क्वायर और सर्कल के एरिया की गणना करे।
08:48 निम्न लिंक पर उपलब्ध विडिओ देखें
08:52 यह स्पोकन ट्यूटोरियल प्रोजेक्ट को सारांशित करता है।
08:55 अच्छी बैंडविड्थ न मिलने पर आप इसे डाउनलोड करके देख सकते हैं।
08:59 स्पोकन ट्यूटोरियल प्रोजेक्ट टीम
09:02 स्पोकन ट्यूटोरियल्स का उपयोग करके कार्यशालाएं चलाती है।
09:05 ऑनलाइन टेस्ट पास करने वालों को प्रमाणपत्र देते हैं।
09:09 अधिक जानकारी कर लिए, कृपया
09:12 contact@spoken-tutorial.org को लिखें।
09:16 स्पोकन ट्यूटोरियल प्रोजेक्ट टॉक-टू-अ टीचर प्रोजेक्ट का हिस्सा है।
09:20 यह भारत सरकार के एम एच आर डी के आई सी टी के माध्यम से राष्ट्रीय साक्षरता मिशन द्वारा समर्थित है।
09:27 इस मिशन पर अधिक जानकारी निम्न लिंक पर उपलब्ध है।
09:32 आई आई टी बॉम्बे से मैं श्रुति आर्य आपसे विदा लेती हूँ।
09:36 हमसे जुड़ने के लिए धन्यवाद।

Contributors and Content Editors

Devraj, Pratik kamble, Sakinashaikh, Shruti arya