Get the most accurate RBSE Solutions for Class 12 Computer Science Chapter 9 क्लास और ऑब्जेक्ट here. Updated for the 2026-27 academic session, these solutions are based on the latest RBSE textbooks for Class 12 Computer Science. Our expert-created answers for Class 12 Computer Science are available for free download in PDF format.
Detailed Chapter 9 क्लास और ऑब्जेक्ट RBSE Solutions for Class 12 Computer Science
For Class 12 students, solving RBSE textbook questions is the most effective way to build a strong conceptual foundation. Our Class 12 Computer Science solutions follow a detailed, step-by-step approach to ensure you understand the logic behind every answer. Practicing these Chapter 9 क्लास और ऑब्जेक्ट solutions will improve your exam performance.
Class 12 Computer Science Chapter 9 क्लास और ऑब्जेक्ट RBSE Solutions PDF
RBSE Class 12 Computer Science Chapter 9 पाठ्यपुस्तक के प्रश्न
RBSE Class 12 Computer Science Chapter 9 वस्तुनिष्ठ प्रश्न
प्रश्न 1. एक यूजर डिफाइन्ड टाईप जो डेटा और फंक्शन को एक साथ बाँधे रखता है, उसे कहा जाता है
(अ) ऑब्जेक्ट
(ब) क्लास
(स) ऐरे
(द) पॉइन्टर
Answer: (ब) क्लास
In simple words: एक ऐसा यूजर डिफाइन्ड प्रकार जो डेटा और फंक्शन को एक ही जगह रखता है, उसे क्लास कहते हैं। यह प्रोग्रामिंग में एक ब्लूप्रिंट की तरह काम करता है।
🎯 Exam Tip: क्लास एक ढांचा है जो डेटा और उस पर काम करने वाले फंक्शन को एक साथ बांधता है, जिससे कोड व्यवस्थित रहता है और आसानी से इस्तेमाल किया जा सकता है।
प्रश्न 2. स्वतः ही क्लास के मेम्बर होते हैं
(अ) पब्लिक
(ब) private
(स) (अ) और (ब) दोनों
(द) इनमें से कोई नहीं
Answer: (स) (अ) और (ब) दोनों
In simple words: क्लास के सदस्य पब्लिक या प्राइवेट दोनों तरह के हो सकते हैं। पब्लिक सदस्य कहीं से भी उपयोग किए जा सकते हैं, जबकि प्राइवेट सदस्य केवल क्लास के अंदर ही उपयोग किए जा सकते हैं।
🎯 Exam Tip: एक्सेस मोडिफायर यह तय करते हैं कि क्लास के सदस्य (डेटा या फंक्शन) को कहाँ-कहाँ से एक्सेस किया जा सकता है, जो ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग में डेटा छिपाने (data hiding) के लिए ज़रूरी है।
प्रश्न 3. इनमें से कौन-सा एक एक्सेस मोडिफायर है?
(अ) public
(ब) private
(स) (अ) और (ब) दोनों
(द) इनमें से कोई नहीं
Answer: (स) (अ) और (ब) दोनों
In simple words: 'public' और 'private' दोनों ही एक्सेस मॉडिफायर हैं। ये यह बताते हैं कि क्लास के सदस्यों को बाहर से कितनी पहुँच मिलेगी।
🎯 Exam Tip: एक्सेस मोडिफायर यह तय करते हैं कि क्लास के डेटा और फंक्शन को बाहरी कोड कितनी दूर तक इस्तेमाल कर पाएगा, जो सुरक्षा और एनकैप्सुलेशन के लिए महत्वपूर्ण है।
प्रश्न 4. इनमें से कौनसा स्टेटिक डेटा मेम्बर के संदर्भ में सत्य है?
(अ) इसकी प्रारम्भिक वेल्यू शून्य होती है जब इसके क्लास का पहला ऑब्जेक्ट बनाया जाता है।
(ब) केवल एक ही प्रतिलिपि इस डेटा मेम्बर की बनती है।
(स) इसे क्लास वेरिएबल भी कहा जाता है।
(द) उपरोक्त सभी
Answer: (द) उपरोक्त सभी
In simple words: एक स्टेटिक डेटा सदस्य की शुरुआती कीमत शून्य होती है जब क्लास का पहला ऑब्जेक्ट बनता है। इसकी केवल एक ही कॉपी होती है जिसे क्लास के सभी ऑब्जेक्ट आपस में बांटते हैं। इसे क्लास वेरिएबल भी कहते हैं क्योंकि यह पूरे क्लास से जुड़ा होता है।
🎯 Exam Tip: स्टेटिक डेटा मेम्बर पूरे क्लास के लिए कॉमन होते हैं और ऑब्जेक्ट बनाने से पहले भी मेमोरी में मौजूद होते हैं, जिससे वे सभी ऑब्जेक्ट्स के बीच जानकारी साझा करने में मदद करते हैं।
प्रश्न 5. इनमें से कौनसा स्टेटिक मेम्बर फंक्शन के संदर्भ में सत्य है?
(अ) स्टेटिक कीवर्ड के साथ घोषित किया जाता है।
(ब) केवल क्लास के दूसरे स्टेटिक डेटा मेम्बर और मेम्बर फंक्शन को एक्सेस कर सकते हैं।
(स) इनको क्लास के नाम की सहायता से कॉल किया जाता है।
(द) उपरोक्त सभी
Answer: (द) उपरोक्त सभी
In simple words: स्टेटिक मेम्बर फंक्शन को 'static' कीवर्ड का इस्तेमाल करके बनाया जाता है। ये केवल क्लास के अन्य स्टेटिक डेटा मेम्बर और फंक्शन तक ही पहुँच सकते हैं, और इन्हें क्लास के नाम का उपयोग करके सीधे बुलाया जा सकता है, ऑब्जेक्ट की ज़रूरत नहीं पड़ती।
🎯 Exam Tip: स्टेटिक मेम्बर फंक्शन ऑब्जेक्ट पर निर्भर नहीं करते हैं और क्लास के सभी ऑब्जेक्ट के लिए एक ही होते हैं, इसलिए वे क्लास-लेवल के ऑपरेशन के लिए आदर्श होते हैं।
प्रश्न 6. इनमें से कौनसा फ्रेंड फंक्शन के संदर्भ में सत्य है?
(अ) इसे सामान्य फंक्शन की तरह कॉल किया जाता है।
(ब) इसे क्लास के अन्दर कहीं भी घोषित किया जा सकता है।
(स) सामान्यतः इसके आरग्यूमेन्ट ऑब्जेक्ट होते हैं।
(द) उपरोक्त सभी
Answer: (द) उपरोक्त सभी
In simple words: फ्रेंड फंक्शन को एक सामान्य फंक्शन की तरह ही बुलाया जाता है। इसे क्लास के अंदर कहीं भी घोषित किया जा सकता है, और आमतौर पर इसके पैरामीटर के रूप में क्लास के ऑब्जेक्ट होते हैं।
🎯 Exam Tip: फ्रेंड फंक्शन क्लास के प्राइवेट और प्रोटेक्टेड सदस्यों तक पहुँच सकते हैं, जिससे कुछ विशेष स्थितियों में डेटा एक्सेस आसान हो जाता है, लेकिन इसका उपयोग सावधानी से करना चाहिए ताकि एनकैप्सुलेशन न टूटे।
प्रश्न 1. क्लास किसे कहते हैं?
Answer: क्लास एक ऐसा उपयोगकर्ता-परिभाषित डेटा प्रकार है जो डेटा (विशेषताओं) और फंक्शन (कार्यक्षमताओं) को एक साथ बांधकर रखता है। क्लास की परिभाषा में उसके डेटा सदस्यों और मेम्बर फंक्शन्स को घोषित किया जाता है। यह ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग में ऑब्जेक्ट्स बनाने का ब्लूप्रिंट होता है।
In simple words: क्लास डेटा और फंक्शन को एक साथ रखने वाला एक ब्लूप्रिंट है। यह हमें बताता है कि एक खास तरह का ऑब्जेक्ट कैसा दिखेगा और क्या कर पाएगा।
🎯 Exam Tip: क्लास को परिभाषित करते समय, उसके डेटा सदस्यों और मेम्बर फंक्शन्स को सही एक्सेस स्पेसिफायर (जैसे public, private) के साथ घोषित करना महत्वपूर्ण है।
प्रश्न 2. ऑब्जेक्ट किसे कहते हैं?
Answer: क्लास टाइप के वेरिएबल्स को ऑब्जेक्ट कहा जाता है। ऑब्जेक्ट क्लास का एक उदाहरण होता है। ऑब्जेक्ट की मदद से हम क्लास के वेरिएबल्स (डेटा सदस्य) और फंक्शन्स (मेम्बर फंक्शन) तक पहुँच सकते हैं और उनका उपयोग कर सकते हैं। यह क्लास द्वारा परिभाषित व्यवहार और गुणों का एक वास्तविक प्रतिनिधित्व है।
In simple words: ऑब्जेक्ट क्लास का एक असली उदाहरण है। यह क्लास के अंदर की जानकारी और कामों को इस्तेमाल करने में मदद करता है।
🎯 Exam Tip: क्लास एक ब्लूप्रिंट है, जबकि ऑब्जेक्ट उस ब्लूप्रिंट का उपयोग करके बनाई गई वास्तविक इकाई है। ऑब्जेक्ट के बिना क्लास का उपयोग नहीं किया जा सकता।
प्रश्न 3. फ्रेंड क्लास किसे कहते हैं?
Answer: यदि एक क्लास के सभी मेम्बर फंक्शन्स को किसी दूसरी क्लास में फ्रेंड के रूप में घोषित कर दिया जाता है, तो उस क्लास को फ्रेंड क्लास कहा जाता है। फ्रेंड क्लास दूसरी क्लास के प्राइवेट और प्रोटेक्टेड सदस्यों तक सीधे पहुँच सकती है, जिससे कुछ विशेष डेटा साझाकरण आसान हो जाता है।
In simple words: जब एक क्लास के सभी फंक्शन दूसरी क्लास के दोस्त बन जाते हैं, तो उस दोस्त क्लास को 'फ्रेंड क्लास' कहते हैं। यह दूसरी क्लास के अंदर की जानकारी भी देख सकती है।
🎯 Exam Tip: फ्रेंड क्लास का उपयोग सावधानी से करना चाहिए क्योंकि यह एनकैप्सुलेशन (डेटा छिपाने) के सिद्धांत का उल्लंघन कर सकता है, इसलिए इसे केवल तभी उपयोग करें जब बिल्कुल आवश्यक हो।
RBSE Class 12 Computer Science Chapter 9 लघु उत्तरीय प्रश्न
प्रश्न 1. प्राइवेट और पब्लिक एक्सेस मोडिफायर में क्या अन्तर है?
Answer: 'private' और 'public' कीवर्ड्स को एक्सेस मोडिफायर कहते हैं। ये क्लास के सदस्यों (डेटा और फंक्शन) को बाहर से एक्सेस करने के तरीके को नियंत्रित करते हैं।
क्लास के पब्लिक सदस्य क्लास के बाहर से भी एक्सेस किए जा सकते हैं। आमतौर पर, क्लास के मेम्बर फंक्शन्स को पब्लिक सेक्शन में रखा जाता है।
क्लास के प्राइवेट सदस्य क्लास के बाहर से एक्सेस नहीं किए जा सकते। यहाँ तक कि क्लास के ऑब्जेक्ट भी उन्हें सीधे एक्सेस नहीं कर सकते। आमतौर पर, क्लास के डेटा सदस्यों को प्राइवेट सेक्शन में रखा जाता है। यह डेटा को सुरक्षित रखने में मदद करता है।
In simple words: 'पब्लिक' सदस्य क्लास के बाहर से भी इस्तेमाल हो सकते हैं, जबकि 'प्राइवेट' सदस्य सिर्फ क्लास के अंदर ही इस्तेमाल हो सकते हैं। यह डेटा को छिपाने और सुरक्षित रखने का तरीका है।
🎯 Exam Tip: प्राइवेट एक्सेस मोडिफायर डेटा एनकैप्सुलेशन का आधार है, जो डेटा को बाहरी दुनिया से छिपाकर रखता है और अनधिकृत एक्सेस से बचाता है।
प्रश्न 2. स्टेटिक डेटा मेम्बर के गुण क्या हैं?
Answer: क्लास के डेटा सदस्यों को 'static' के रूप में भी घोषित किया जा सकता है। स्टेटिक डेटा मेम्बर के गुण इस प्रकार हैं:
• इसकी शुरुआती वैल्यू शून्य होती है जब क्लास का पहला ऑब्जेक्ट बनाया जाता है।
• इस डेटा मेम्बर की केवल एक ही कॉपी बनती है और इसे क्लास के सभी ऑब्जेक्ट आपस में साझा करते हैं।
• क्योंकि यह पूरे क्लास से जुड़ा हुआ है, इसे क्लास वेरिएबल भी कहा जाता है। यह क्लास के लिए एक कॉमन काउंटर की तरह काम कर सकता है।
In simple words: स्टेटिक डेटा मेम्बर की शुरुआत शून्य से होती है, इसकी सिर्फ एक कॉपी होती है जिसे क्लास के सभी ऑब्जेक्ट इस्तेमाल करते हैं, और इसे 'क्लास वेरिएबल' भी कहते हैं क्योंकि यह पूरे क्लास से संबंधित होता है।
🎯 Exam Tip: स्टेटिक डेटा मेम्बर पूरे क्लास के जीवनकाल तक बने रहते हैं और ऑब्जेक्ट के बजाय क्लास से जुड़े होते हैं, जिससे वे ग्लोबल डेटा साझा करने के लिए उपयोगी होते हैं।
RBSE Class 12 Computer Science Chapter 9 निबंधात्मक प्रश्न
प्रश्न 1. फ्रेंड फंक्शन किसे कहते हैं? इसे गुण लिखो।
Answer: **फ्रेंड फंक्शन:** जैसा कि हम जानते हैं, क्लास के प्राइवेट सदस्य क्लास के बाहर से सीधे एक्सेस नहीं किए जा सकते। एक फ्रेंड फंक्शन क्लास के प्राइवेट डेटा को उस क्लास के ऑब्जेक्ट के माध्यम से एक्सेस कर सकता है। जब एक फंक्शन दो क्लासों में समान हो, तो आमतौर पर हम उस फंक्शन को दोनों क्लासों के लिए फ्रेंड बना लेते हैं। इस फंक्शन को 'friend' कीवर्ड के साथ घोषित किया जाता है। एक फ्रेंड फंक्शन की निम्नलिखित विशेषताएँ होती हैं:
• इसे एक सामान्य फंक्शन की तरह ही कॉल किया जाता है।
• इसे क्लास के ऑब्जेक्ट की मदद के बिना कॉल नहीं किया जा सकता है।
• यह क्लास के सदस्यों को केवल उस क्लास के ऑब्जेक्ट की सहायता से एक्सेस कर सकता है।
• इसे क्लास के अंदर कहीं भी घोषित किया जा सकता है।
• आमतौर पर इसके आर्गुमेंट के रूप में ऑब्जेक्ट होते हैं। फ्रेंड फंक्शन डेटा छिपाने के सिद्धांत को आंशिक रूप से तोड़ते हैं, इसलिए उनका उपयोग सावधानी से करना चाहिए।
In simple words: फ्रेंड फंक्शन एक खास फंक्शन होता है जो किसी क्लास के प्राइवेट डेटा को भी देख सकता है, जबकि बाकी फंक्शन ऐसा नहीं कर पाते। इसे 'friend' कीवर्ड से बनाते हैं और यह सामान्य फंक्शन की तरह ही काम करता है, बस इसे ऑब्जेक्ट के साथ बुलाया जाता है।
🎯 Exam Tip: फ्रेंड फंक्शन का मुख्य उद्देश्य क्लासों के बीच कुछ डेटा को विशेष एक्सेस देना है, जिससे वे जटिल ऑपरेशंस को आसान बना सकें, लेकिन एनकैप्सुलेशन का ध्यान रखना ज़रूरी है।
प्रश्न 2. एक 'Complex' क्लास बनाइए जो एक Complex नम्बर को बताता है और दो काम्पलेक्स नम्बरों को । जोड़ने और घटाने के लिए मेम्बर फंक्शन परिभाषित करने का प्रोग्राम लिखो।
Answer:cpp
#include
🎯 Exam Tip: कॉम्प्लेक्स नंबर क्लास में डेटा सदस्यों (re, im) को प्राइवेट रखना और उन्हें एक्सेस करने के लिए पब्लिक मेंबर फंक्शन्स (get, disp, sum, subt) का उपयोग करना एनकैप्सुलेशन का एक अच्छा उदाहरण है।
प्रश्न 3. दो क्लासों के डेटा मेम्बर की अदला-बदली करने का फ्रेंड फंक्शन की सहायता से प्रोग्राम लिखो।
Answer:cpp
#include
RBSE Class 12 Computer Science Chapter 9 अन्य महत्त्वपूर्ण प्रश्न
RBSE Class 12 Computer Science Chapter 9 अतिलघु उत्तरीय प्रश्न
प्रश्न 1. डेटा हाइडिंग किसे कहते हैं?
Answer: डेटा को क्लास के प्राइवेट सेक्शन में घोषित करना ही डेटा हाइडिंग कहलाता है। यह ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग भाषाओं का एक महत्वपूर्ण फीचर है। डेटा हाइडिंग के ज़रिए क्लास के अंदर के डेटा को बाहरी कोड से छिपाया जाता है, जिससे डेटा की सुरक्षा बढ़ती है और अनधिकृत एक्सेस रोका जाता है।
In simple words: डेटा हाइडिंग का मतलब है कि क्लास के डेटा को प्राइवेट बनाना ताकि बाहर से कोई उसे सीधे न देख सके या बदल न सके। यह डेटा को सुरक्षित रखता है।
🎯 Exam Tip: डेटा हाइडिंग एनकैप्सुलेशन का एक हिस्सा है, जहाँ डेटा को सीधे एक्सेस करने के बजाय उसे केवल पब्लिक मेम्बर फंक्शन्स के माध्यम से ही बदला या देखा जा सकता है, जो कोड की मजबूती बढ़ाता है।
प्रश्न 2. प्राइवेट अनुभाग में और पब्लिक अनुभाग में घोषित क्लास के मेम्बर में मुख्य अन्तर बताइए।
Answer: क्लास के वे सदस्य जिन्हें प्राइवेट सेक्शन में घोषित किया जाता है, उन्हें केवल उसी क्लास के मेम्बर ही एक्सेस कर सकते हैं। बाहरी फंक्शन्स या ऑब्जेक्ट्स प्राइवेट सदस्यों तक नहीं पहुँच सकते।
इसके विपरीत, क्लास के वे सदस्य जिनकी घोषणा पब्लिक सेक्शन में हुई है, उन्हें क्लास के बाहर से भी एक्सेस किया जा सकता है। पब्लिक सदस्य क्लास के ऑब्जेक्ट के माध्यम से आसानी से उपयोग किए जा सकते हैं। यह अंतर डेटा को नियंत्रित पहुँच प्रदान करता है।
In simple words: प्राइवेट सदस्य सिर्फ क्लास के अंदर काम करते हैं, जबकि पब्लिक सदस्य क्लास के बाहर से भी इस्तेमाल किए जा सकते हैं।
🎯 Exam Tip: प्राइवेट सदस्यों का उपयोग डेटा को सुरक्षित रखने के लिए किया जाता है, जबकि पब्लिक सदस्य क्लास की कार्यक्षमता को बाहरी दुनिया के लिए उपलब्ध कराते हैं।
प्रश्न 3. इनलाइन फंक्शन किसे कहते हैं?
Answer: एक फ्रेंड फंक्शन क्लास के प्राइवेट डेटा को उस क्लास के ऑब्जेक्ट के जरिए एक्सेस कर सकते हैं। इनलाइन फंक्शन को कंपाइलर द्वारा फंक्शन कॉल की जगह सीधे कोड में बदल दिया जाता है, जिससे प्रोग्राम का निष्पादन तेज़ होता है।
In simple words: इनलाइन फंक्शन छोटे फंक्शन होते हैं। जब आप इन्हें बुलाते हैं, तो इनका कोड सीधे वहीं कॉपी हो जाता है जहाँ इन्हें बुलाया गया है, जिससे प्रोग्राम थोड़ा तेज़ चलता है।
🎯 Exam Tip: इनलाइन फंक्शन्स का उपयोग छोटे, बार-बार उपयोग होने वाले फंक्शन्स के लिए करना चाहिए, क्योंकि बड़े फंक्शन्स को इनलाइन करने से कोड का आकार बढ़ सकता है।
प्रश्न 5. क्या फ्रेंड फंक्शन ऑब्जेक्ट रिटर्न कर सकते हैं?
Answer: हाँ, फ्रेंड फंक्शन ऑब्जेक्ट रिटर्न कर सकते हैं। फ्रेंड फंक्शन किसी क्लास के ऑब्जेक्ट को रिटर्न कर सकते हैं, ठीक वैसे ही जैसे कोई सामान्य फंक्शन किसी वैल्यू को रिटर्न करता है। यह जटिल डेटा संरचनाओं के साथ काम करते समय उपयोगी होता है।
In simple words: हाँ, फ्रेंड फंक्शन ऑब्जेक्ट को वापस भेज सकते हैं। जैसे एक फंक्शन कोई नंबर वापस करता है, वैसे ही फ्रेंड फंक्शन एक पूरा ऑब्जेक्ट वापस भेज सकता है।
🎯 Exam Tip: फ्रेंड फंक्शन द्वारा ऑब्जेक्ट रिटर्न करने की क्षमता क्लासों के बीच डेटा के आदान-प्रदान और जटिल गणनाओं के परिणामों को वापस भेजने में बहुत मददगार होती है।
प्रश्न 6. डिरेफरेंसिंग ऑपरेटर क्या कार्य होता है?
Answer: डिरेफरेंसिंग ऑपरेटर \((.*)\) की सहायता से मेम्बर फंक्शन को कॉल कर सकते हैं। यह एक पॉइंटर-टू-मेम्बर ऑपरेटर है जो क्लास के ऑब्जेक्ट के माध्यम से उसके सदस्यों को एक्सेस करने के लिए उपयोग किया जाता है जब आपके पास क्लास ऑब्जेक्ट का पॉइंटर होता है।
In simple words: डिरेफरेंसिंग ऑपरेटर \((.*)\) का उपयोग क्लास के सदस्यों (जैसे फंक्शन) को एक्सेस करने के लिए किया जाता है, खासकर जब हम ऑब्जेक्ट के पॉइंटर का इस्तेमाल कर रहे हों।
🎯 Exam Tip: डिरेफरेंसिंग ऑपरेटर और मेंबर सेलेक्शन ऑपरेटर \((->)\) दोनों का उपयोग पॉइंटर्स के माध्यम से क्लास के सदस्यों तक पहुँचने के लिए किया जाता है, लेकिन उनके सिंटैक्स अलग होते हैं।
प्रश्न 7. क्या क्लास के डेटा मेम्बर को स्टेटिक घोषित किया जा सकता है?
Answer: हाँ, क्लास के डेटा मेम्बर को स्टेटिक के रूप में भी घोषित किया जा सकता है। जब एक डेटा मेम्बर को स्टेटिक घोषित किया जाता है, तो वह उस क्लास के सभी ऑब्जेक्ट के लिए साझा किया जाता है। इसकी केवल एक प्रतिलिपि मेमोरी में रहती है।
In simple words: हाँ, क्लास के डेटा को 'static' बनाया जा सकता है। इसका मतलब है कि वह डेटा क्लास के सभी ऑब्जेक्ट के लिए एक ही होगा, अलग-अलग नहीं।
🎯 Exam Tip: स्टेटिक डेटा मेम्बर अक्सर ऐसे डेटा के लिए उपयोग किए जाते हैं जो क्लास के सभी ऑब्जेक्ट्स के बीच समान होते हैं, जैसे ऑब्जेक्ट्स की गिनती या कोई साझा कॉन्फ़िगरेशन।
प्रश्न 8. क्या फ्रेंड फंक्शन ऑब्जेक्ट रिटर्न कर सकते हैं?
Answer: हाँ, फ्रेंड फंक्शन ऑब्जेक्ट रिटर्न कर सकते हैं। फ्रेंड फंक्शन किसी क्लास के ऑब्जेक्ट को रिटर्न कर सकते हैं, ठीक वैसे ही जैसे कोई सामान्य फंक्शन किसी वैल्यू को रिटर्न करता है। यह जटिल डेटा संरचनाओं के साथ काम करते समय उपयोगी होता है।
In simple words: हाँ, फ्रेंड फंक्शन ऑब्जेक्ट को वापस भेज सकते हैं। जैसे एक फंक्शन कोई नंबर वापस करता है, वैसे ही फ्रेंड फंक्शन एक पूरा ऑब्जेक्ट वापस भेज सकता है।
🎯 Exam Tip: फ्रेंड फंक्शन द्वारा ऑब्जेक्ट रिटर्न करने की क्षमता क्लासों के बीच डेटा के आदान-प्रदान और जटिल गणनाओं के परिणामों को वापस भेजने में बहुत मददगार होती है।
RBSE Class 12 Computer Science Chapter 9 लघु उत्तरीय प्रश्न
प्रश्न 1. क्लास की घोषणा का प्रारूप लिखिए। अथवा क्लास का सिन्टेक्स लिखिए।
Answer: क्लास की घोषणा का प्रारूप (सिंटैक्स) निम्नलिखित है:
cpp
Class class_name
{
private: variable declaration; function declaration;
public: variable declaration; function declaration;
};
यह प्रारूप क्लास का नाम, उसके प्राइवेट और पब्लिक सदस्यों (वेरिएबल्स और फंक्शन्स) की घोषणा को दर्शाता है। क्लास के नाम के बाद कर्ली ब्रेसेस \(( \{\} )\) में उसके सदस्य होते हैं और अंत में एक सेमीकोलन \((;)\) होता है।
In simple words: क्लास बनाने का तरीका ऐसा है कि पहले 'Class' कीवर्ड लिखते हैं, फिर क्लास का नाम। इसके बाद कर्ली ब्रैकेट में उसके डेटा और फंक्शन बताते हैं कि कौन सा पब्लिक है और कौन सा प्राइवेट, और आखिर में एक सेमीकोलन लगाते हैं।
🎯 Exam Tip: क्लास की घोषणा में 'private' और 'public' एक्सेस स्पेसिफायर का उपयोग करना अनिवार्य है ताकि डेटा की सुरक्षा और बाहरी पहुँच को नियंत्रित किया जा सके।
प्रश्न 2. क्लास के मेम्बर को एक्सेस किस प्रकार किया जाता है? उदाहरण भी दीजिए।
Answer: हम केवल क्लास के पब्लिक मेम्बर को उस क्लास के ऑब्जेक्ट के ज़रिए एक्सेस कर सकते हैं। प्राइवेट मेम्बर सीधे ऑब्जेक्ट के ज़रिए एक्सेस नहीं किए जा सकते।
पब्लिक मेम्बर फंक्शन को एक्सेस करने का प्रारूप इस प्रकार है:
`object_name. function_name (arguments list);`
उदाहरण के लिए:
`p.input (10, 20);`
यहां, ऑब्जेक्ट 'p' के द्वारा 'input()' फंक्शन को कॉल किया गया है। स्टेटमेंट `p.x = 10;` मान्य नहीं है क्योंकि 'x' को प्राइवेट घोषित किया गया है और इसे केवल क्लास के मेम्बर फंक्शन्स ही सीधे एक्सेस कर सकते हैं, न कि ऑब्जेक्ट। यह डेटा सुरक्षा के लिए महत्वपूर्ण है।
In simple words: क्लास के पब्लिक हिस्से को ही उसके ऑब्जेक्ट का नाम लगाकर इस्तेमाल कर सकते हैं। जैसे 'p.input(10, 20)'। प्राइवेट हिस्सों को बाहर से सीधे इस्तेमाल नहीं किया जा सकता, वे सिर्फ क्लास के अंदर ही काम आते हैं।
🎯 Exam Tip: क्लास के मेम्बर फंक्शन्स को एक्सेस करने के लिए डॉट ऑपरेटर \((.)\) का उपयोग किया जाता है, जिससे क्लास के ऑब्जेक्ट के माध्यम से उसकी कार्यक्षमता को लागू किया जा सके।
प्रश्न 3. एक्सेस मोडिफायरस पर संक्षिप्त टिप्पणी लिखिए।
Answer: एक्सेस मोडिफायर 'public' और 'private' कीवर्ड्स को एक्सेस मोडिफायरस कहा जाता है। ये क्लास के सदस्यों (डेटा और फंक्शन) को एक्सेस करने की प्रणाली को नियंत्रित करते हैं।
क्लास के पब्लिक मेम्बर को क्लास के बाहर से एक्सेस किया जा सकता है। सामान्यतः क्लास के मेम्बर फंक्शन्स को पब्लिक सेक्शन में रखा जाता है ताकि वे बाहरी कोड के लिए उपलब्ध रहें।
क्लास के प्राइवेट मेम्बर क्लास के बाहर से एक्सेस नहीं किए जा सकते। यहाँ तक कि क्लास के ऑब्जेक्ट भी उन्हें सीधे एक्सेस नहीं कर सकते। आमतौर पर क्लास के डेटा मेम्बर को प्राइवेट सेक्शन में रखा जाता है ताकि डेटा को सुरक्षित रखा जा सके। यह ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग में डेटा छिपाने का मुख्य तरीका है।
In simple words: 'public' और 'private' जैसे एक्सेस मोडिफायर यह तय करते हैं कि क्लास के डेटा और फंक्शन को बाहर से कितनी पहुँच मिलेगी। 'पब्लिक' सब जगह इस्तेमाल होता है, जबकि 'प्राइवेट' सिर्फ क्लास के अंदर।
🎯 Exam Tip: एक्सेस मोडिफायर का सही उपयोग डेटा की सुरक्षा सुनिश्चित करता है और क्लास के इंटरनल इंप्लीमेंटेशन डिटेल्स को बाहरी कोड से छिपाकर रखता है, जिससे कोड की जटिलता कम होती है।
प्रश्न 4. दो नम्बरों के योग का फ्रेंड फंक्शन की सहायता से प्रोग्राम लिखिए।
Answer:cpp
#include
🎯 Exam Tip: फ्रेंड फंक्शन का उपयोग क्लास के प्राइवेट डेटा को बाहरी फंक्शन द्वारा एक्सेस करने की अनुमति देता है, जिससे कुछ विशेष ऑपरेशंस को लागू करना आसान हो जाता है, जैसे कि दो ऑब्जेक्ट के प्राइवेट सदस्यों का योग करना।
प्रश्न 5. हम क्लास के मेम्बर का एड्रेस पॉइन्टर को किस प्रकार असाइन कर सकते हैं? उदाहरण सहित बताइए।
Answer: हम एक क्लास के मेम्बर का एड्रेस पॉइंटर को निम्न प्रकार से असाइन कर सकते हैं:
cpp
class X
{
int a;
public:
void show();
};
हम क्लास 'X' के मेम्बर 'a' के लिए पॉइंटर इस प्रकार परिभाषित कर सकते हैं:
`intX::*p = &X::a;`
यहां, `X::*` का मतलब क्लास X के मेम्बर के लिए पॉइंटर है।
`&X::a` का मतलब क्लास X का मेम्बर 'a' का एड्रेस है।
स्टेटमेंट `int *p = &a;` कार्य नहीं करेगा क्योंकि 'p' एक सामान्य पॉइंटर है, जबकि `&X::a` क्लास 'X' के मेम्बर 'a' का एड्रेस है, जिसे मेंबर-पॉइंटर की आवश्यकता होती है। पॉइंटर 'p' का उपयोग डेटा मेम्बर 'a' को मेम्बर फंक्शन और फ्रेंड फंक्शन के अन्दर एक्सेस करने के लिए कर सकते हैं।
उदाहरण के लिए, मेम्बर फंक्शन के लिए:
`Xx; //object created`
`void(X::*pf) () = &X::show;`
`(x.*pf) (); //invoke show`
यहां 'pf' मेम्बर फंक्शन 'show()' के लिए पॉइंटर है। क्लास के मेम्बर का एड्रेस पॉइंटर को असाइन करना क्लास के अंदर डेटा और फंक्शन को डायनामिक रूप से एक्सेस करने में मदद करता है।
In simple words: क्लास के डेटा या फंक्शन का पता किसी खास तरह के पॉइंटर को दिया जा सकता है। यह 'क्लास नाम::*पॉइंटर का नाम' जैसा दिखता है, जिससे हम क्लास के सदस्यों को सीधे एक्सेस कर पाते हैं।
🎯 Exam Tip: मेंबर-पॉइंटर्स का उपयोग विशेष रूप से उन स्थितियों में किया जाता है जहाँ हमें रनटाइम पर क्लास के सदस्यों को डायनामिक रूप से चुनना और एक्सेस करना होता है, जैसे इवेंट हैंडलर्स में।
RBSE Class 12 Computer Science Chapter 9 निबंधात्मक प्रश्न
प्रश्न 1. क्लास के मेम्बर फंक्शन को कितने प्रकार से परिभाषित किया जा सकता है? उदाहरण सहित बताइए।
Answer: मेम्बर फंक्शन को दो मुख्य प्रकार से परिभाषित किया जा सकता है: क्लास के अन्दर (Inline) और क्लास से बाहर (Outline)।
**क्लास के अन्दर (Inside the Class):**
जब मेम्बर फंक्शन की घोषणा को क्लास के अंदर ही उसकी वास्तविक परिभाषा के साथ किया जाता है, तो उसे क्लास के अंदर परिभाषित करना कहते हैं। क्लास के अंदर परिभाषित मेम्बर फंक्शन को कंपाइलर द्वारा इनलाइन फंक्शन माना जाता है, जिससे फंक्शन कॉल का ओवरहेड कम होता है।
उदाहरण के लिए:
cpp
class point
{
int x,y;
public:
void input (int a, int b) // Inline definition
{
x=a;
y=b;
}
void output (void) // Inline definition
{
cout<<"x ="<< x << "\n";
cout<<"y ="<< y;
}
};
**क्लास के बाहर (Outside the Class):**
मेम्बर फंक्शन्स जिनकी घोषणा क्लास के अंदर की गई हो, उनको क्लास से बाहर अलग से परिभाषित करना होता है। ऐसे फंक्शन्स को परिभाषित करने के लिए स्कोप रेज़ोल्यूशन ऑपरेटर (\(::\)) का उपयोग किया जाता है।
मेम्बर फंक्शन को परिभाषित करने का प्रारूप:
`return_type class_name::function_name (arguments)`
`{`
`function body`
`}`
यहां `class_name` यह दर्शाता है कि फंक्शन इस क्लास से संबंधित है। यह तरीका तब उपयोगी होता है जब फंक्शन का कोड लंबा होता है, जिससे क्लास की परिभाषा साफ-सुथरी रहती है।
उदाहरण के लिए:
cpp
class point
{
int x,y;
public:
void input (int a, int b); // Declaration inside
void output (void); // Declaration inside
};
void point::input(int a, int b) // Definition outside
{
x = a;
y = b;
}
void point::output (void) // Definition outside
{
cout<< "x ="<< x << "\n";
cout<< "y ="<< y;
}
यह दोनों तरीके प्रोग्रामर को क्लास मेम्बर फंक्शन्स को व्यवस्थित करने में लचीलापन प्रदान करते हैं।
In simple words: क्लास के फंक्शन्स को दो तरह से बनाया जा सकता है: या तो क्लास के अंदर ही उनका कोड लिख दें (जो छोटे फंक्शन्स के लिए अच्छा है), या क्लास के बाहर उनका कोड लिखें और स्कोप ऑपरेटर का इस्तेमाल करें (जो बड़े फंक्शन्स के लिए अच्छा है)।
🎯 Exam Tip: इनलाइन फंक्शन्स से प्रोग्राम तेज़ चलता है लेकिन बड़े फंक्शन्स के लिए कोड का आकार बढ़ सकता है, जबकि क्लास के बाहर परिभाषित फंक्शन्स कोड को व्यवस्थित रखते हैं।
प्रश्न 2. क्या ऐरे भी क्लास के डेटा मेम्बर के रूप में हो सकते हैं? उदाहरण सहित बताइए। अथवा क्लास के भीतर ऐरे का प्रोग्राम लिखिए।
Answer: हाँ, ऐरे भी क्लास के डेटा मेम्बर के रूप में हो सकते हैं। क्लास के अंदर ऐरे को घोषित करके हम ऑब्जेक्ट के अंदर डेटा का एक संग्रह बना सकते हैं। यह तब उपयोगी होता है जब किसी क्लास के ऑब्जेक्ट को कई समान प्रकार की वैल्यूज़ को स्टोर करने की आवश्यकता होती है।
क्लास के भीतर ऐरे का प्रोग्राम निम्नलिखित है:
cpp
#include
6 5 9 8 1
Array elements are
6 5 9 8 1
यह प्रोग्राम एक 'data' क्लास को दर्शाता है जिसमें `a[5]` नाम का एक ऐरे डेटा मेम्बर के रूप में है। `getdata()` फंक्शन यूज़र से ऐरे के 5 एलिमेंट इनपुट लेता है, और `showdata()` फंक्शन उन एलिमेंट को दिखाता है। यह दिखाता है कि कैसे एक क्लास ऑब्जेक्ट के अंदर ऐरे को स्टोर और मैनेज किया जा सकता है।
In simple words: हाँ, क्लास के अंदर ऐरे (एक ही तरह की चीज़ों का ग्रुप) को रखा जा सकता है। यह कोड दिखाता है कि कैसे एक क्लास के अंदर ऐरे बनाकर उसमें नंबर डाले जा सकते हैं और फिर उन्हें दिखाया जा सकता है।
🎯 Exam Tip: क्लास के अंदर ऐरे को डेटा मेम्बर के रूप में उपयोग करना एक ऑब्जेक्ट को संबंधित डेटा के एक पूरे सेट को स्टोर करने की अनुमति देता है, जिससे डेटा मैनेजमेंट अधिक कुशल हो जाता है।
Question 1. स्टेटिक डेटा मेम्बर को दर्शाने वाला एक प्रोग्राम लिखिए।
Answer:#include<iostream>
using namespace std;
class data
{
static int x;
int y;
public:
void getdata (int a)
{
y = a;
x++;
}
void show_x(void)
{
cout<<"x ="<<x <<"\n";
}
};
int data::x; //static member definition
int main()
{
data d1, d2; // x is initialized to zero
d1.show_x();
d2.show_x();
d1.getdata (10);
d2.getdata (20);
cout<<"After reading data"<<"\n";
d1. show_x ();
d2. show_x ();
return 0;
}
प्रोग्राम का आउटपुट होगा:
x =0
x =0
After reading data
x =2
x =2
In simple words: यह प्रोग्राम दिखाता है कि क्लास में स्टेटिक डेटा मेम्बर कैसे काम करते हैं। स्टेटिक डेटा मेम्बर सभी ऑब्जेक्ट्स के लिए साझा होता है और एक बार ही बनता है। `getdata` कॉल करने पर, यह बढ़ता है, और सभी ऑब्जेक्ट्स के लिए बदली हुई वैल्यू दिखाता है।
🎯 Exam Tip: स्टेटिक डेटा मेम्बर क्लास के सभी ऑब्जेक्ट्स द्वारा साझा किए जाते हैं, इसलिए किसी एक ऑब्जेक्ट द्वारा किया गया कोई भी बदलाव सभी ऑब्जेक्ट्स के लिए दिखाई देता है।
Question 5. फ्रेंड क्लास के लिए एक प्रोग्राम लिखिए। अथवा फ्रेंड क्लास का उपयोग करते हुए दो नम्बरों में से maximum नम्बर निकालने के लिए प्रोग्राम लिखिए।
Answer:#include<iostream>
using namespace std;
class second; //forward declaration
class first
{
int x;
public:
void set_value(int a)
{
x=a;
}
friend void max (first, second);
};
class second
{
int y;
public:
void set_value (int b)
{
y=b;
}
friend void max (first, second);
};
void max (first f, second s)
{
if (f.x>s.y)
cout<<"Maximum is"<<f.x;
else
cout<<"Maximum is"<<s.y;
}
int main()
{
first A;
second B;
A.set_value (10);
B.set_value (20);
max (A,B);//calling friend function
return 0;
}
प्रोग्राम का आउटपुट होगा:
Maximum is 20
In simple words: यह प्रोग्राम दिखाता है कि फ्रेंड क्लास का उपयोग करके दो क्लासों के ऑब्जेक्ट्स के बीच वैल्यूज की तुलना कैसे करें। यहाँ `max` फंक्शन दो अलग-अलग क्लासों के प्राइवेट डेटा को एक्सेस करके सबसे बड़ी संख्या ढूंढता है।
🎯 Exam Tip: फ्रेंड फंक्शन का उपयोग तब किया जाता है जब आपको क्लास के प्राइवेट या प्रोटेक्टेड डेटा को एक्सेस करने की आवश्यकता होती है, लेकिन यह एनकैप्सुलेशन के सिद्धांत को कमजोर कर सकता है, इसलिए इसका उपयोग सावधानी से करें।
Question 6. रिटर्निग ऑब्जेक्ट के लिए एक प्रोग्राम लिखिए। अथवा दो vectors को जोडने के लिए रिटर्निंग ऑब्जेक्ट का उपयोग करते हुए प्रोग्राम लिखिए।
Answer:#include<iostream>
using namespace std;
class vector
{
int V[3];
public:
void set_vector (void)
{
cout<<"Enter three numbers\n";
for (int i=0;i<3; i++)
cin>>V[i];
}
void display (void)
{
for (int i = 0; i<3; i++)
cout<<V[i]<<",";
}
friend vector sum (vector, vector);
};
vector sum (vector P, vector q)
{
vector T;
for (int i=0;i<3;i++)
T.V[i] = P.V[i] + q.V[i];
return T;
}
int main()
{
vector v1, v2, v3;
v1.set_vector();
v2.set_vector();
v3=sum (v1, v2);
cout<<"First vector is:";
v1.display();
cout<<"\n";
cout<<"Second vector is:";
v2.display();
cout<<"\n";
cout<<"Resultant vector is:";
v3.display();
return(0);
}
प्रोग्राम का आउटपुट होगा:
Enter three numbers
3 -2 5
Enter three numbers
-8 6 7
First vector is: 3,-2,5,
Second vector is: -8,6,7,
Resultant vector is:-5,4,12
In simple words: यह प्रोग्राम वेक्टर क्लास के ऑब्जेक्ट को जोड़ना सिखाता है और दिखाता है कि एक फंक्शन कैसे एक ऑब्जेक्ट को रिटर्न कर सकता है। दो वेक्टर इनपुट लिए जाते हैं, उनके संबंधित एलिमेंट्स को जोड़ा जाता है, और एक नया वेक्टर ऑब्जेक्ट रिजल्ट के रूप में रिटर्न किया जाता है।
🎯 Exam Tip: फंक्शन से ऑब्जेक्ट्स को रिटर्न करते समय, सुनिश्चित करें कि रिटर्न किया गया ऑब्जेक्ट सही ढंग से कॉपी या मूव किया गया है ताकि डेटा हानि से बचा जा सके, खासकर जब लोकल ऑब्जेक्ट्स को रिटर्न कर रहे हों।
Free study material for Computer Science
RBSE Solutions Class 12 Computer Science Chapter 9 क्लास और ऑब्जेक्ट
Students can now access the RBSE Solutions for Chapter 9 क्लास और ऑब्जेक्ट prepared by teachers on our website. These solutions cover all questions in exercise in your Class 12 Computer Science textbook. Each answer is updated based on the current academic session as per the latest RBSE syllabus.
Detailed Explanations for Chapter 9 क्लास और ऑब्जेक्ट
Our expert teachers have provided step-by-step explanations for all the difficult questions in the Class 12 Computer Science chapter. Along with the final answers, we have also explained the concept behind it to help you build stronger understanding of each topic. This will be really helpful for Class 12 students who want to understand both theoretical and practical questions. By studying these RBSE Questions and Answers your basic concepts will improve a lot.
Benefits of using Computer Science Class 12 Solved Papers
Using our Computer Science solutions regularly students will be able to improve their logical thinking and problem-solving speed. These Class 12 solutions are a guide for self-study and homework assistance. Along with the chapter-wise solutions, you should also refer to our Revision Notes and Sample Papers for Chapter 9 क्लास और ऑब्जेक्ट to get a complete preparation experience.
FAQs
The complete and updated RBSE Solutions Class 12 Computer Science Chapter 9 क्लास और ऑब्जेक्ट is available for free on StudiesToday.com. These solutions for Class 12 Computer Science are as per latest RBSE curriculum.
Yes, our experts have revised the RBSE Solutions Class 12 Computer Science Chapter 9 क्लास और ऑब्जेक्ट as per 2026 exam pattern. All textbook exercises have been solved and have added explanation about how the Computer Science concepts are applied in case-study and assertion-reasoning questions.
Toppers recommend using RBSE language because RBSE marking schemes are strictly based on textbook definitions. Our RBSE Solutions Class 12 Computer Science Chapter 9 क्लास और ऑब्जेक्ट will help students to get full marks in the theory paper.
Yes, we provide bilingual support for Class 12 Computer Science. You can access RBSE Solutions Class 12 Computer Science Chapter 9 क्लास और ऑब्जेक्ट in both English and Hindi medium.
Yes, you can download the entire RBSE Solutions Class 12 Computer Science Chapter 9 क्लास और ऑब्जेक्ट in printable PDF format for offline study on any device.