हिंदी माध्यम नोट्स
Categories: c++ language in hindi
Constructor in c++ language , types of constructor in c++ ,Need ,Declaring
types of constructor in c++ ,Need ,Declaring ,Constructor in c++ language :-
इससे पहले के article मे , stock maintenance प्रोजेक्ट को discuss किया जाता है | stock प्रोजेक्ट code मे कई सारे default function को use किया जा सकता है | इसे constructors और destructors कहते है | अब इस article मे c++ constructors को discuss करेगे |
Need of C++ constructors
c++ language मे class object को नार्मल standard types की तरह use किया जाता है | अभी तक हमने c++ object को initial नहीं किया था अब इस article मे c++ object को int और struct की तरह initial भी किया जा सकता है | stock type को नार्मल variable की तरह initial नहीं किया जा सकता है | इसका उदाहरन निन्म है :-
int year = 2003;
struct google{
char * item ;
int m ;
};
google g1 = {‘abc’,2005};
stock g2 = {‘parth,meet’,2008 ,200};
इस stock g2 = {‘parth,meet’,2008 ,200}; statement से struct को initial नहीं किया जा सकता है | क्योकि stock object मे कई data item private होता है | इसे डायरेक्ट access नहीं किया जासकता है |इस data item को access करने के लिए member function को use किया जाता है |अगर यूजर द्वारा सही member function को use किया जाता है तभी ही object stock को initial किया जाता है | इस method से object को initail तभी किया जा सकता है जब इसके data item को public access mode मे declare किया जाता है |
genral method मे , जब object को initail किया जाता है तब ही इसे initail किया जाना चाहिए | उदाहरन के लिए
stock gift;
gift.buy(10,230);
जब इस उदाहरन को consider किया जाता है तब stock class के object को initail नहीं किया गया है | इसलिए object मे compnay का name भी initail नहीं हुआ | जब इस प्रकार के code को run किया जाता है इसे error generate होता है | जब c++ object को declare किया जाता ही इसे आटोमेटिक initail किया जाता है |c++ मे एक sepeciaल function होता है जिसे c++ constructor कहते है | c++ constructor का use किसी नए object को declare करने के लिए और इसमें values को assign करने के लिए किया जाता है | इसका name class name के सामान रहता है |
उदाहरन के लिए stock class के लिए constructor का नाम stock ही रहता है | constructor prototype और header का एक अलग से properties होती है | constructors मे कोई return value नहीं होती है इसका return type भी void नहीं होता है |
Declaring of C++ constructors
जब किसी constructors को declare किया जाता है | तब ये अलग अलग ही concept को use करता है | उदाहरन की तरह stock क्लास के लिए constructors को declare करने के लिएconstructorsमे तीन argument को pass किया जाता है | stock constructors को declare करने के लिए तीन argument की जरुरत इसलिए पड़ी क्योकि stock class मे तीन external value को ACCEPT किया जाता है | और fourth value total को constructors के declare मे use नहीं किया जाता है क्योकि इसे share_value * number से find किया जाता है | अतः इसके केवल COMPNANY के लिए values को पास किया जाता है | इसका constructors निन्म होता है :-
stock (const char * compnany , int n =0 , double price = 0.0 )
इस constructors मे
पहला argument एक string का pointer है जिसमे compnany array member से initial किया जाता है |
n : ये integer type variable है जिसमे share के name को initail किया जाता है |
price : ये integer type variable है जिसमे share की price से initial किया जाता है |
इसका उदाहरन निन्म होता है :-
stock :: stock (const char * compnany , int n =0 , double price = 0.0 )
{
std :: strcpy ( name ,company,50 );
company[50]=’\0′;
if(n<0)
{
std::cerr<<“share can not be negetive “;
<< we set share equal to ‘0’ “<<endl;
share = 0 ;
}
else
share = n ;
share_price = price ;
total ();
}
ये code पहले वाले code के सामान है लेकिन इस case मे difference निन्म होता है की इसमें प्रोग्राम एक automatic function को invoke करता है जिससे constructors की value को आटोमेटिक initail किया जाता है |
c++ constructors मे constructors का data item मे constructors के name को initail को नहीं किया जाता है | बल्कि constructors की value को initial किया जाता है |
उदाहरन 2 मे book class को use किया जाता है | book मे name , price और year को इन्तिअल किया जाता है | इसके लिए generate constructors के लिए तीन argument को pass किया जाता है | इसनकी value को आटोमेटिक को initial किया जाता है | और इसमें कोई fourth variable नहीं है इसलिए इसमें कोई confusion नहीं होता है | लेकिन अगर यूजर book से regarding दूसरी information को store करना चाहता है तब इस constructors मे pass argument की सख्या 4 हो जाती है |
book :: book (const char * name , int year =0 , double price = 0.0 )
{
std :: strcpy ( book _ name ,name ,50 );
book _ name[50]=’\0′;
cout<<“Book name :”<<book _ name ;
cout<<“price : “<<price;
cout<<“Publish year :”<<year ;
}
इस article मे c++ constructors को discuss किया जाता है | अब आगे के article मे c++ constructors के advance method को discuss करेगे |
Recent Posts
सती रासो किसकी रचना है , sati raso ke rachnakar kaun hai in hindi , सती रासो के लेखक कौन है
सती रासो के लेखक कौन है सती रासो किसकी रचना है , sati raso ke…
15 hours ago
मारवाड़ रा परगना री विगत किसकी रचना है , marwar ra pargana ri vigat ke lekhak kaun the
marwar ra pargana ri vigat ke lekhak kaun the मारवाड़ रा परगना री विगत किसकी…
16 hours ago
राजस्थान के इतिहास के पुरातात्विक स्रोतों की विवेचना कीजिए sources of rajasthan history in hindi
sources of rajasthan history in hindi राजस्थान के इतिहास के पुरातात्विक स्रोतों की विवेचना कीजिए…
2 days ago
गुर्जरात्रा प्रदेश राजस्थान कौनसा है , किसे कहते है ? gurjaratra pradesh in rajasthan in hindi
gurjaratra pradesh in rajasthan in hindi गुर्जरात्रा प्रदेश राजस्थान कौनसा है , किसे कहते है…
2 days ago
Weston Standard Cell in hindi वेस्टन मानक सेल क्या है इससे सेल विभव (वि.वा.बल) का मापन
वेस्टन मानक सेल क्या है इससे सेल विभव (वि.वा.बल) का मापन Weston Standard Cell in…
3 months ago
polity notes pdf in hindi for upsc prelims and mains exam , SSC , RAS political science hindi medium handwritten
get all types and chapters polity notes pdf in hindi for upsc , SSC ,…
3 months ago