Mga Halimbawa ng C++ Const Function

Mga Halimbawa Ng C Const Function



Nakatuon ang artikulong ito sa keyword na 'const' na ginagamit kasama ng function sa C++. Ang 'const' na keyword ay tinutukoy bilang ang palaging halaga na hindi namin mababago sa panahon ng pagpapatupad ng programa. Ang mga function na 'const' sa C++ ay ang mga function na ang mga miyembro ng data ay pinaghihigpitan na baguhin sa kanilang klase. Ang mga function na 'cont' ay mahusay na ginagamit dahil maiiwasan nila ang mga hindi inaasahang pagbabago sa halaga ng bagay.

Halimbawa 1: Programa ng Function ng Const Member sa C++

Dito, mayroon kaming simpleng programa ng function ng const member:

#include
gamit namespace std ;
klase MyClass {
int sa isa ;
pampubliko :
MyClass ( int n = 0 ) {
sa isa = n ;
}
int getValue ( ) const {
bumalik sa isa ;
}
} ;
int pangunahing ( ) {
const Aking Klase c ( 30 ) ;
MyClass c1 ( 5 ) ;
cout << 'Numero gamit ang object c : ' << c. getValue ( ) ;
cout << ' \n Numero gamit ang object c1 : ' << c1. getValue ( ) ;
bumalik 0 ;
}

Sa una, tinutukoy namin ang header file na nagbibigay-daan sa mga stream ng input/output ng programa. Pagkatapos, itinakda namin ang klase na 'MyClass' kung saan nagdedeklara kami ng variable na 'num' at ang mga function ng miyembro ng MyClass() function at ang getVal() function. Sa loob ng MyClass() function, itinakda namin ang parameter na 'n' na may halaga na '0'. Pagkatapos, ang argument na 'n' ay itinalaga sa variable na 'num'. Susunod, tinatawag namin ang getVal() function na may 'const' na keyword, na nagpapahiwatig na ang kasalukuyang estado ng object ay hindi maaaring baguhin sa isang function na tawag. Ang getVal() function ay nagbabalik ng “num” member variable.







Sa wakas, naabot namin ang pangunahing() function. Dito, tinutukoy namin ang 'c' at 'c1' na mga bagay ng MyClass() function at ipinapasa din ang mga halaga sa mga bagay na ito. Ang 'c' na bagay ay nakatakda sa 'const' na keyword, na nagpapahiwatig na ang halaga na itinalaga sa bagay na ito ay hindi mababago.



Ang output ng function ng const member na tinatawag ng object ay ipinapakita sa sumusunod. Sa ganitong paraan, magagamit natin ang keyword na 'const' kasama ang function ng miyembro at ang object:







Halimbawa 2: Programa ng Function ng Const Member sa Labas ng Klase sa C++

Ngayon, mayroon kaming isa pang pagpapatupad kung saan ang function ng const member ay tinukoy sa labas ng isang kahulugan ng klase at itinakda at kunin ang isang variable na value ng pribadong miyembro gamit ang isang function ng miyembro ng const.

#include
gamit namespace std ;

klase Bagong Klase {
int i ;

pampubliko :
walang bisa set_record ( int ) ;

int get_record ( ) const ;
} ;

walang bisa Bagong Klase :: set_record ( int x ) { i = x ; }
int Bagong Klase :: get_record ( ) const { bumalik i ; }

int pangunahing ( )
{
Bagong Klase c ;
c. set_record ( 10 ) ;
cout << c. get_record ( ) ;

bumalik 0 ;
}

Dito, una kaming nagtatag ng isang klase, 'NewClass', kung saan sinisimulan namin ang variable na 'i' na pinananatiling pribado. Pagkatapos nito, mayroon kaming pampublikong keyword kung saan tinukoy ang set_record() at get_record() na mga function ng miyembro. Ang set_record() member function ay ginagamit upang itakda ang value ng “i” variable at ang get_record() function ay ginagamit dito para ibalik ang value ng “i” variable. Tandaan na ginagamit namin ang 'const' na keyword na may get_record() member function na kumakatawan dito bilang const member function, at hindi mababago ang object state. Pagkatapos nito, mayroon kaming set_record() function na kahulugan upang itakda ang 'i' variable value.



Katulad nito, mayroon tayong get_record() function na kahulugan upang makuha ang variable na value ng 'i'. Pagkatapos, itinakda namin ang main() function kung saan mayroon kaming deklarasyon ng 'c' object ng 'NewClass' na klase. Pagkatapos, ang 'set_record', isang function na hindi miyembro ng const, ay tinatawag upang magtalaga ng isang halaga sa variable na 'z'. Sa paglipat, tinatawagan namin ang get_record() const member function upang i-print ang halaga ng “i”.

Ang halaga ng variable na pribadong miyembro ay tinatawag ng const member function at ipinapakita sa sumusunod na prompt:

Halimbawa 3: Programa ng Function ng Const Member na Tinukoy sa Labas ng Klase bilang Independent Function

Gayunpaman, nagpapatupad kami ng isa pang kaso ng function ng miyembro ng const kung saan ang function ng miyembro na may keyword na 'const' ay tinatawag sa labas ng klase bilang isang standalone na function.

#include
gamit namespace std ;
klase Equation {
int n1,n2 ;
pampubliko :
walang bisa set_equation ( int x, int at )
{
n1 = x ;
n2 = at ;
}
walang bisa show_equation ( )
{
cout << 'Ang Equation ay:' << n1 << '+' << n2 << 'b' << endl ;
}
kaibigan walang bisa nakakatuwa naman ( const Equation ) ;
} ;
walang bisa nakakatuwa naman ( const Equation obj )
{
cout << 'Ang Equation na gumagamit ng function ay: ' << obj. n1 << '+' << obj. n2 << 'b' << endl ;
}
int pangunahing ( )
{
Equation obj ;
obj. set_equation ( 5 , 8 ) ;
obj. show_equation ( ) ;
nakakatuwa naman ( obj ) ;
}

Dito, nilikha namin ang klase ng 'Equation()' at pagkatapos ay idineklara ang mga variable na 'n1' at 'n2'. Dito, idinaragdag din namin ang function ng miyembro ng set_Equation() upang itakda ang mga halaga ng mga variable na 'n1' at 'n2'. Ang show_Equation() function ay nagpapakita ng equation na nabuo gamit ang mga variable na ito.

Pagkatapos nito, mayroon kaming function na deklarasyon ng funIs() na tinukoy gamit ang keyword na 'kaibigan'. Ang keyword na 'kaibigan' na ito ay nagpapahintulot sa amin na ma-access ang pribadong miyembro ng klase ng 'Equation'. Susunod, tinatawag namin ang function ng kaibigan na 'funIs()' sa labas ng klase at ipasok ang parameter na 'obj' ng klase na 'Equation' bilang const. Sa huli, mayroon kaming pangunahing() function kung saan ipinapahayag namin ang object ng klase ng 'Equation'. Pagkatapos, itinakda namin ang mga halaga ng mga variable na 'n1' at 'n2' gamit ang set_Equation() function. Ang mga variable na 'n1' at 'n2' ay ginagamit upang ipakita ang kanilang mga halaga gamit ang show_Equation() function. Panghuli, tinatawag namin ang function ng kaibigang 'funIs' ng klase na 'Equation' upang ipakita ang equation.

Ang equation at ang equation gamit ang const friend function ay ipinapakita sa prompt:

Halimbawa 4: Programa ng Function ng Const Member para I-update ang Value sa C++ (Pinakamasamang Kaso)

Ang programa ay nagpapakita ng pinakamasamang sitwasyon ng const member function kung saan sinusubukan naming baguhin ang value ng variable na tinatawag na 'inside the const member function'.

#include
gamit namespace std ;

klase Data {
int sa ;

pampubliko :
walang bisa setValue ( int i ) { sa = i ; }
int getValue ( ) const
{

++ sa ;
bumalik sa ;
}

} ;

int pangunahing ( )
{
Datos d ;
d. setValue ( dalawampu ) ;
cout << endl << d. getValue ( ) ;

bumalik 0 ;
}

Dito, binubuo muna namin ang klase ng 'Data' at idineklara ang variable na 'v' sa loob ng klase. Pagkatapos nito, itinakda namin ang 'pampubliko' na keyword at pagkatapos ay idineklara ang mga function ng miyembro ng klase ng 'setValue()' na kumakatawan sa constructor ng klase at ang getValue() na nagpapahiwatig ng getter member function ng klase. Kinukuha ng function na setValue() ang variable na 'i' bilang isang parameter. Ang variable na 'i' na ito ay itinalaga sa variable ng miyembro ng 'v'.

Pagkatapos nito, mayroon tayong getValue() function definition kung saan kinukuha natin ang value ng variable na “v”. Dahil ang getValue() function ay idineklara gamit ang 'const' na keyword, na kumakatawan na ang halaga ng variable na 'v' ay hindi maa-update sa anumang kaso. Gayunpaman, sinasadya naming subukang dagdagan ang variable na 'v' para baguhin ang value nito. Kapag ang programa ay umabot sa yugtong ito, ang isang error ay itinapon. Panghuli, mayroon kaming pangunahing() function na tawag kung saan tinukoy namin ang 'd' na bagay ng klase ng 'Data' at itinakda ang halaga ng '20' para sa 'd' na bagay na ito. Pagkatapos nito, tinatawagan namin ang function na getValue() upang makuha ang halaga ng 'd' ng object.

Binubuo ng prompt ang mga resulta ng nakaraang pagpapatupad kung saan nagbibigay ito ng error sa '++v' dahil hindi kami pinapayagang baguhin ang halaga ng mga object ng function ng const member:

Konklusyon

Sa konklusyon, sumisid kami sa const function ng C++ na ginagamit upang maiwasan ang mga hindi sinasadyang pagbabago sa halaga ng programa. Ang mga function ng const member sa C++ ay mga read-only na function na hindi pinapayagan ang pagbabago ng mga object kung saan ito tinatawag. Nagpatupad din kami ng iba't ibang senaryo ng const function para ipakita ang functionality nito sa C++.