JOIN us on
WhatsApp Group Join Now
Telegram Join Join Now

हिंदी माध्यम नोट्स

Categories: c++ language in hindi

C++ : Template Matching with program example source code , what is Template Matching in c++ language

what is Template Matching in c++ language , C++ : Template Matching with program example source code :-
इससे पहले के article मे , function template overload को discuss किया है | और किसी function के लिए बेस्ट template को find करने के लिए matching method को use किया जाता है | इस article मे matching को discuss करेगे |
matching भी दो प्रकार की होती है :
1. Exact matching
c++ language मे , exact matching के लिए trivial conversion को use किया जाता है | नीचे दिए गये table मे match को discuss किया गया है | उदाहरन के लिए actual parameter int के लिए int ही exact match होता है | लेकिन type conversion मे char & के लिए const char & और char & दोनों ही exact m,आतच हो सकता है |
त्योए matching का मतलब है की call function मे pass argument का type , function prototype मे declare arguments से match होना चाहिए | यस function pointer मे pass argument के type के सामान भी होना चाहिए | function pointer का मतलब है येसा pointer जो की किसी function की डेफिनिशन को hold करता है |
Table :
Actual Parameter
Type
Type
Type &
Type &
Type
Type []
*type
Type {argument-list}
Type (*) {argument list }
Type
Type const
Type
Type volatile
Type *
Const type *
Type *
Volatile type *
नीचे दिए code मे ,
struct book {char name [50]; int price ; };
book b = {“good boy”, 230};
………..;
sell(b);
नीचे दिए गये prototype इस function के लिए exact match है :-
void sell( book );
void sell(const book );
void sell (book & );
void sell(const book & );
in सभी exact match मे से एक बेस्ट match को find करने का कार्य complier करता है | complier overload resolution प्रोसेस का use नहीं कर सकता है | ओएँ सभी मे से अगर कोई भी बेस्ट vialble function नहीं होता है तब complier error message दे देता है |
case 1 :
कभी कभी overload resolution को generate कर दिया जाता है जन दो या दो से अधिक function मे exact match आ जाता है |pointer और reference to const data , mon const pointer या reference से perfectly match होता है | इसलिए केवल function 3 और 4 ही इस function के लिए बेस्ट solution होता है | इन दोनों मे से function 3 को choose किया जाता है क्योकि इसमें const variable को use नहीं किया गया है |
case 2 :
कोई function prototype , दुसरे function prototype से बेस्ट तब होता है जब पहला function non template function होता है दूसरा template function होता है | इस condition मे non template function , तम्प्लाते function से बेस्ट होता है |
case 3 :
जब दोनों ही function template function होता है तब जो भी function more sepecilized होता है use बेस्ट consider किया जाता है |
उदाहरन के लिए
struct blot {int a ; char b [10 ];};
tamplate <class type > void recyle (type t );
tamplate <> void recycle<blot> (blot & t) ;
………………
blot ink = {25 , “Game”};
…….
recycle(ink) ;
केवल more sepecilized होने से function tamplate बेस्ट नहीं होता है बल्कि इस function template मे execute होने वाले conversion पर भी निर्भर करता है | जैसे
tamplate <class type > void recyle (type t );
tamplate <class type > void recyle (type *t );
और main प्रोग्राम मे ,
main()
{
struct blot b = {“12”, “game”};
cout<<“blot size : “<<b.a;
cout<<“blot name : “<<b.b ;
recycle( &b);
cout<<“blot size : “<<b.a;
cout<<“blot name : “<<b.b ;
}
function call recycle(b); tamplate 1 से exact match होता है |  लेकिन जब function call मे blot * को pass किया जाता है तब tamplate 2 से exact match होता है |
matching को समजने के लिए एक पूरा code को consider करता है :
#include<iostream>
template<typename t >      // tamplae 1
void showarray(t a[] , int size )
template<typename t >      // tamplae 2
void showarray(t * a[] , int size )
struct salary
{
char name[50];
int salary ;
};
void main()
{
using namespace std;
int dep[3]={1 , 2 , 3 };
struct salary [3]
{
{“parth”, 20000};
{“Om”,25000};
{“rahul”, 30000};
}
double * p[3];
for(int i =0 ; i<3;i++)
{
p[i]=&saalry.salary ;
}
cout<< “Department : “<<endl;
showarray(dep, 3);
cout<<“salary : “<<endl;
showarray(p, 3 );
getsch () ;
}
template<typename t>
void showarray( t a[], size )
{
using namespace std;
cout<<“template 1 “;
for (int i =0 ; i< size ; i ++)
{
cout<<a[i];
}
cout<<endl;
}
template<typename t>
void showarray( t a[], size )
{
using namespace std;
cout<<“template 2 “;
for (int i =0 ; i< size ; i ++)
{
cout<<*a[i];
}
cout<<endl;
}
जब function showarray(dep, 3); को call किया जाता है तब dep एक integer type array का नाम है इसके लिए बेस्ट template निन्म होता है :
template<typename t>
void showarray( t a[], size )
इसमें t एक integer type template है |
जब function showarray(p, 3 ); को call किया जाता है तब p एक int type pointer है जो की array के तीन address को hold करता है | जब इस function को call किया जाता  है तब नीचे दिए गये function tamplate को use किया जाता है :-
template<typename t>
void showarray( t*a[], size )
इसका output होगा :
Department :
1
2
3
Salary :
10000
15000
20000
इस article मे , template के सबसे complicated concept matching को discuss किया है | अब आगे के article मे template पर based कुश उदाहरनो को discuss करेगे जिससे आ सभी के matching और template के concept को अच्छी तरह से समज सकते है |
Sbistudy

Recent Posts

Question Tag Definition in english with examples upsc ssc ias state pcs exames important topic

Question Tag Definition • A question tag is a small question at the end of a…

2 weeks ago

Translation in english grammer in hindi examples Step of Translation (अनुवाद के चरण)

Translation 1. Step of Translation (अनुवाद के चरण) • मूल वाक्य का पता करना और उसकी…

2 weeks ago

Report Writing examples in english grammer How to Write Reports explain Exercise

Report Writing • How to Write Reports • Just as no definite rules can be laid down…

2 weeks ago

Letter writing ,types and their examples in english grammer upsc state pcs class 12 10th

Letter writing • Introduction • Letter writing is an intricate task as it demands meticulous attention, still…

2 weeks ago

विश्व के महाद्वीप की भौगोलिक विशेषताएँ continents of the world and their countries in hindi features

continents of the world and their countries in hindi features विश्व के महाद्वीप की भौगोलिक…

2 weeks ago

भारत के वन्य जीव राष्ट्रीय उद्यान list in hin hindi IAS UPSC

भारत के वन्य जीव भारत में जलवायु की दृष्टि से काफी विविधता पाई जाती है,…

2 weeks ago
All Rights ReservedView Non-AMP Version
X

Headline

You can control the ways in which we improve and personalize your experience. Please choose whether you wish to allow the following:

Privacy Settings
JOIN us on
WhatsApp Group Join Now
Telegram Join Join Now