objects oriented Programming With C++

Question 1  
Aoops के features को समझाइए ? 

Answer 
Oops programing  :-  oops का पूरा नाम ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग होता है जो ऑब्जेक्ट की अवधारणा पर आधारित है इसमें डाटा और फंक्शन दोनों शामिल होते हैं इसमें रीड शब्द एंटिटी  के अनुरूप प्रोग्रामिंग किया जाता है इससे प्रोग्राम एक वस्तु और दूसरे वास्तु के बीच में संबंध बना सकते हैं इस प्रोग्रामिंग pradigm  में procedural प्रोग्रामिंग के कर्मियों को दूर करने के लिए किया गया है
Oops  प्रोग्राम को निम्नलिखित प्रोग्रामिंग लैंग्वेज इस्तेमाल करती है 
जैसे-  java,  c++,  lythen,  c#, php,  perl, Swift, .
Oops की मूलभूत अवधारणा  :या

Class :-  क्लास उपयोगकर्ता द्वारा डिफाइन किया गया ऑब्जेक्ट का ब्लूप्रिंट या प्रोटोटाइप होता है जो किसी एक प्रकार के ऑब्जेक्ट का समूह होता है।

Object :-  यह क्लास का instance होता है ऑब्जेक्ट एक रियल word  एंटिटी होता है जिसे अपना व्यवहार और गुणधर्म होता है यह ऑब्जेक्ट के क्रिएट होने पर मेमोरी से में स्पेस लेता है।

Inheritance :- oops programing एक महत्वपूर्ण फीचर है इसमें एक क्लास के गुण धर्म देती है वह सुपर क्लास तथा जो क्लास गुणधर्म लेती है वह सब क्लास तथा जो क्लास गुरु धर्म देती है वह सब क्लास कहलाती है।

Abstraction:-  Oops programing मैं एब्स्ट्रेक्शन एक ऐसा फीचर है जिसमें ऑब्जेक्ट के आवश्यकता जानकारी को ही दिखाया जाता है तथा अनावश्यक जानकारी को बैकग्राउंड में हाइड रखा जाता है जैसे जब हम एटीएम मशीन में cash निकलते हैं तो cash तो निकल जाता है लेकिन एटीएम के अंदर के प्रक्रिया को हाइड रखा जाता है।

Polimorphism :   पॉलीमोरफ़िज्म दो शब्द पाली  + mophism से मिलकर बना है जिसका अर्थ अनेक रूप होना होता है इसमें किसी एक कार्य को दो अलग-अलग तरीके से किया जा सकता है।
Oops की विशेषताएं  
1)  इस प्रोग्रामिंग में लिखे गए कोड को समझने में आसानी होती है।
2) इस प्रोग्रामिंग में लिखी गए कोड को  reuse किया जा सकता है।
3) इसमें प्रोग्राम का स्ट्रक्चर सरल और compiexity  कम होता है।
4) इस तोप रानी मैं फंक्शन और टाटा की सुरक्षा पर विशेष ध्यान दिया जाता हैं ।
5) इसमें प्रोग्राम को डिसाइड करना और संसोधन कल आसान होता है

Question 2  
functions ओवरलोडिंग क्या है उदाहरण सहित समझाइए? 

Answer 
C++ functions ओवरलोडिंग एक महत्वपूर्ण फीचर है जिसमें  दो या दो से अधिक फंक्शन का same नाम  होता है परंतु उनके पैरामीटर अलग-अलग होते है  दूसरे शब्दों में कहें  तो c++से बहुत सारे फंक्शन का नाम समान हो सकता है परंतु उनके  पैरामीटर अलग-अलग होते हैं इसे ही फंक्शन ओवरलोडिंग कहते हैं।
फंक्शन ओवरलोडिंग का मुख्य लाभ यह है कि इससे प्रोग्राम की Readability बढ़ जाती है
उदाहरण के लिए
// Same name different argument
Int demo ( ) { }
Int demo(int a) { } 
Flot demo (int a) { }
Int demo (int a ,double b){ }
C++ function overloading  कैसे करते हैं  
function को दो तरीके से ओवरलोड किया जाता है
1 argument की संख्या बदल के
2 argument के टाइप बदल के

1) argument की संख्या बदल के :  इस प्रकार की फंक्शन ओवरलोडिंग में फंक्शन के argument की संख्या डिफरेंट होती है।
Example : # include < iostream >
Using namespace std ;
Int add (int a ,int b)
{
Cout <<  a+b  << end 1 ;
Return 0 ;
}

2) argument के टाइप  को चेंज करके :   इस मेथड को फंक्शन के पैरामीटर के डाटा टाइप अलग होते हैं
Example
 # include  <iostream>
Using name space std ;
Int add (int x ,int y ) // first  definition
{
Cout << x+y <<  end 1 ;
Return 0 ;
}
Flot add (float a , float b)
{
Cout  << a+b << end  1;
Return 0 ;
}
Double add ( doble  x, double y)
{
Cout  << x+ y<<end 1; 
Return 0; 
}


Question 3 
निम्न को समझाइए? 
A)    new operator      
C++ में न्यू ऑपरेटर का इस्तेमाल डायनेमिक मेमोरी allocate करने के लिए किया जाता है Syntax for new यहां पर न्यू ऑपरेटर के साथ कौन से भी डाटा टाइप की और arrey के साथ dynamic memory एलोकेट की जा सकती हैं यहां पर मेमोरी allocation के  क्लास को भी लिया जा सकता है
For example
New int 
New int [ 10]; 
जब dynamic memory allocation करने हो तो  pointer ka  इस्तेमाल किया जाता है
जब न्यू ऑपरेटर एक डायनेमिक एलोकेशन है तब इसका एड्रेस न्यू है ऑपरेटर से दिया pointer स्टोर है
Syntax for new operator with pointer  : 
Pointer =new data type
Pointer= new data type [ array size]; 
Dynamic memory allocation  के example 
मैं देखा जाए तो वहां न्यू के साथ आई int का एड्रेस ; स्टोर करने के लिए int लिया है और ptr  में न्यू से int का एड्रेस रिटर्न होकर ptr के अंदर स्टोर होगा ।
For example
Int   ptr
Ptr    new int ;
Ptr   =   new int ;
Ptr     =  new int [ 50 ] 
 //For array 

B)   Destructor  :-
सरल शब्दों में एक c++ deztructor का उपयोग कस्ट्रक्टर
द्वारा क्रिएट किए गए ऑब्जेक्ट को डिस्ट्रॉय करने के लिए किया जाता है जैसे Constractor का उपयोग क्लास वेरिएबल  को initialize  करने के लिए किया जाता है कि उसी तरह c++ डेस्ट्रक्टर का उपयोग कांस्ट्रोटर द्वारा इंटियलाइज ऑब्जेक्ट  को डिस्ट्रॉय करने के लिए किया जाता है
Syntax 
 ~function name ( );
इसमें constructor  की ही तरह destructor का नाम क्लास नाम जैसा ही होता है
C++ program मे constructor के साथ destrucctor कभी प्रयोग किया जाता है परंतु क्यो?
Why are use destrucctor in c++?
जैसा कि हम जानते हैं कि constractor , से हम किसी क्लास वेरिएबल को initialize कर सकते हैं एक built  in data type की तरह लेकिन जहां एक साधारण डांटा टाइप मेरे लिए बनके आउट ऑफ scope जाने पर compilar द्वारा आटोमेटिक डिस्ट्रॉय हो जाता है वही क्लास में ऐसा नहीं होता ऐसी स्थिति में हम डिस्ट्रक्टर प्रयोग मिलाते हैं फलस्वरुप जैसे क्लास वेरिएबल आउट ऑफ scope हो जाता हैं वैसे ही compilar डिस्ट्रक्टर  को invoke कर देता है 
Rule for declaring a destructor in c++  :-
 :  कनस्ट्रक्चर की तरह ही एक destructor functions को प्यार के पब्लिक में declare किया जाता है जबकि 
इसकी डेफिनिशन , आउटside क्लास या inside क्लास हों सकती है 
:एक  डेस्ट्रेक्टर फंक्शन रिटर्न टाइप 
का नहीं होगा हल किया वाइड टाइप भी होगा दिए गए syntax में destructor को पब्लिक डिक्लेयर किया गया है।
Class   class - name 
{
Public ;
~class - name ( ) ;// public mode
} ;
Class -  name  : :~ class - name  ( )
{
••••••••••
••••••••••
}
Explanation   :- 
उदाहरण के लिए यहां एक constuctor
मेंबर 3 ऑब्जेक्ट (x,y,3 ) initialize करता है और एक
Destructur मेंबर उन ऑब्जेक्ट को रिवर्स order  डेस्ट्रॉप करे 
ध्यान रखे कि डेस्ट्रॉयर सदस्य  ऑब्जेक्ट मैं दिखाए गए अनुसार ऑब्जेक्ट को verse तरीके से नष्ट करेगा।

(C) friend functions  :-
C++ मैं जब किसी फंक्शन को फ्रेंड फंक्शन के रूप में डिक्लेअर किया जाता है तो एक क्लास में प्रोटेक्ट और प्राइवेट डांटा को इस फंक्शन का प्रयोग करके access करते हैं आसान शब्दों में कहें तो एक फ्रेंड फंक्शन एक क्लास के प्राइवेट और प्राइवेट डांटा को access कर सकता है।
C++ मैं फ्रेंड फंक्शन को कैसे डिक्लेअर करते हैं :
 फ्रेंड फंक्शन को हमेशा क्लास की बॉडी ही अंदर डिक्लेअर करना होता है इसके लिए फ्रेंड कीवर्ड का प्रयोग किया जाता है
Syntax:-
Class class name 
{ friend return type function name}
Friend function की विशेषताएं 
1) फ्रेंड फंक्शन को इसकी क्लास की अब ये के द्वारा call नहीं किया जाता
2) एक फ्रेंड उस  क्लासके  scope में नहीं होता है जिसमें उसे डिक्लेअर किया जाता है
3) उसे किसी ऑब्जेक्ट का प्रयोग किए बिना समानता फंक्शन की तरह ही invoke किया जा सकता है।
4) यह मेंबर नेम को डायरेक्ट एक्सेस नहीं कर सकता है और इसे मेंबर नेम के साथ ऑब्जेक्ट नेम और dop ऑपरेटर (•) का प्रयोग करना पड़ता है
5) इसे क्लास के पब्लिक और प्राइवेट सेक्शन में कहीं भी डिक्लेअर किया जा सकता है
6) एक फ्रेंड फंशन  एक ग्लोबल फंक्शन मैं या किसी दूसरी क्लास मेंबर हो सकता है
C++ friend function ka example
# include  <iostream >
Using namespace std ;
Class distance
Private 
Int meter
Public :
Distance ( ) : meter (0) { } 
Friend int func // friend function 
} ; 
Int func (distance)// function definition 
D• meter =10 ;  // accessing private data 
From non - member function 
Return d•metor  ;
}
Int  main ( )
{
 Distance  d ; 
Cout<<" distance : " <<fun c (d ); 
Return 0;
}


Question 4 
c++ मे costructructer को उचित उदाहरण सही समझाइए ?

Answer 
Constructor एक तरह का मेंबर फंक्शन होता है जो क्या ऑब्जेक्ट को initilaze  करता है फंशन में आप क्लास के डांटा मेंबर वेरिएबल को inital value assign करते हैं जब भी किसी क्लास का एक मैं ऑब्जेक्ट को क्रिएट किया जाता है तो उस क्लास का कंस्ट्रक्टर को कॉल होता है और उसे दिए गए सभी स्टेटमेंट एक्जीक्यूट होते हैं
Constuctor आपको किसी ऑब्जेक्ट को प्रयोग करने से पहले जरुरी टास्क को परफॉर्म करने की कैपेबिलिटी
प्रोवाइड करते हैं आप वेरिएबल को initialize करती हैं deta bes / server से कनेशन ,estabiliah कर सकते हैं
Example के लिए मान लीजिए कि अपने आप एक क्लास को क्रिएट की है इसका नाम प्रोडक्ट है इस क्लास में आपने  वेरिएबल प्राइस और batchid diclare किए है
Class product 
{
Private : 
Int price ;
Int batchid ;
इस क्लास का जब आप ऑब्जेक्ट को क्रिएट करते हैं तो c++के द्वारा डिफॉल्ट constructor  call किया जाता है और प्राइस और batchid वेरिएबल 0 वैल्यू ज को असाइन होती है integer के लिए जीरो इंटियल वैल्यू  होती है
यदि आप चाहे तो खुद भी constructor का प्रयोग करते हुए इन वेरिएबल को अपनी मनचाही वैल्यू से या फिर उन value से असाइन कर सकते हैं जो यूज़र ऑब्जेक्ट को  क्रिकेट करते समय argument के रूप में पास करेगा नीचे custructor की माध्यम से इन वेरिएबल को डिफरेंट वैल्यू कोasign करने का example दिया जा सकता है
# include < iostream >
Using namespace  std ;
Class stvdent 
Private :
Int rollnu 
Public : 
Student ( ) ; // construtor declare 
Void display stu ( ) ;
}
Student : : Student ( viod )
Ro no =10
{  Void student :: display stu 
Student obj 1; 
Obj 1 display stu( )
Return 0;
}


Question 5
 c++ में  इनपुट सिस्टम और आउटपुट सिस्टम को उदाहरण सहित समझाइए?

Answer 
C++ मैं इनपुट और आउटपुट के लिए स्ट्रीम  का इस्तमाल किया जाता है सामान्य जीवन में भी दो मुख्य इनपुट और आउटपुट डिवाइस है ए कीबोर्ड से दिया हुआ इनपुट मॉनिटर डेस्कटॉप की स्क्रीन में आउटपुट के माध्यम से दिखता है c++
मैं ऐसी ही header फाइल है और इन header फाइल में इनपुट आउटपुट होते हैं 
Input/ आउट put के लिए c++ 3 header है:-

1) Iostream :-  standard stream se data red and write करने के लिए इस header फाइल का उपयोग किया जाता है c++ के प्रोग्राम में इनपुट/आउटपुट के लिए iostream इस हेडर फाइल को इंक्लूड करना पड़ता है।

2)  Iomanip :-  imanip यह भी एक इनपुट आउटपुट लाइब्रेरी का हिस्सा है जिसमें argument के साथ manipulator function होते हैं iomanip फॉर्मेटेड इनपुट /आउटपुट के लिए इस्तमाल किया जाता है।

3) fatream : Fastream का उपयोग फाइल के लिए होता है फाइल को रीड और राइट करना हो तो इस header फाइल को इंक्लूड करना जरुरी है
Cout ( Console आउट put ): standard output stream :-  cout output screen पर दिखता है
Cout ये ओस्ट्रीम क्लास का ऑब्जेक्ट हैं
Cout के साथ बीinsertion operator c<<काजी इस्तमाल किया जाता है।
Source code :-
# include < iostream .h>
Using namespace std ;
Int main ( )
Cout <<"hello World " << endl;
Return 0;
}
Output
Hello World !
Cin ( Console input ): standard input atream :-
:- cin keyboard  से data को input करता है
: cin ये istream क्लास का ऑब्जेक्ट हैं ।
:cin के साथ एक्सट्रैक्शन ऑपरेटर (>>)का भी उपयोग किया जाता है।
: एक्सट्रैक्शन ऑपरेटर को एक ही लाइन में वेरिएबल के साथ अनेक एक्सट्रेक्शन oprator (>>) का भी उपयोग के जाता है।
सोर्स कोड :
# include < iostream .h>
Using namespace std;
Int main ( )
Int a,b ;
Cin >> a >> b;
Cout <<" value of  a : "<< a endl ;
Cout  <<" value of b :" << b  endl; 
Return 0 ; 
}
Output 
Enter two numbers 
वैल्यू of a  : 5
वैल्यू of b  : 6

Post a Comment

Previous Post Next Post