Primjeri funkcija C++ Const

Primjeri Funkcija C Const



Ovaj se članak fokusira na ključnu riječ 'const' koja se koristi s funkcijom u C++. Ključna riječ “const” naziva se konstantna vrijednost koju ne možemo mijenjati tijekom izvođenja programa. Funkcije 'const' u C++ su one funkcije čiji su članovi podataka ograničeni na promjenu u svojoj klasi. Funkcije 'cont' učinkovito se koriste jer mogu izbjeći neočekivane izmjene vrijednosti objekta.

Primjer 1: Program funkcije Const Member u C++

Ovdje imamo jednostavan program funkcije člana const:

#include
korištenjem imenski prostor std ;
razreda Moj razred {
int na jedan ;
javnost :
Moj razred ( int n = 0 ) {
na jedan = n ;
}
int getValue ( ) konst {
povratak na jedan ;
}
} ;
int glavni ( ) {
konst Moj razred c ( 30 ) ;
Moj razred c1 ( 5 ) ;
cout << 'Broj koristeći objekt c:' << c. getValue ( ) ;
cout << ' \n Broj koristeći objekt c1: ' << c1. getValue ( ) ;
povratak 0 ;
}

U početku definiramo datoteku zaglavlja koja omogućuje ulazno/izlazne tokove programa. Zatim postavljamo klasu 'MyClass' gdje deklariramo varijablu 'num' i funkcije članice funkcije MyClass() i funkcije getVal(). Unutar funkcije MyClass() postavljamo parametar “n” s vrijednošću “0”. Zatim se argument “n” dodjeljuje varijabli “num”. Zatim pozivamo funkciju getVal() s ključnom riječi 'const', pokazujući da se trenutno stanje objekta ne može mijenjati prilikom poziva funkcije. Funkcija getVal() vraća varijablu člana 'num'.







Konačno, dolazimo do funkcije main(). Ovdje definiramo objekte 'c' i 'c1' funkcije MyClass() i također prosljeđujemo vrijednosti tim objektima. Objekt 'c' postavljen je ključnom riječi 'const', što pokazuje da se vrijednost koja je dodijeljena ovom objektu ne može mijenjati.



Izlaz funkcije člana const koju poziva objekt prikazan je u nastavku. Na ovaj način možemo koristiti ključnu riječ “const” s funkcijom članom i objektom:







Primjer 2: Program funkcije člana Const izvan klase u C++

Sada imamo još jednu implementaciju u kojoj je funkcija člana const definirana izvan definicije klase i postavlja i dohvaća vrijednost varijable privatnog člana pomoću funkcije člana const.

#include
korištenjem imenski prostor std ;

razreda NewClass {
int ja ;

javnost :
poništiti postaviti_rekord ( int ) ;

int get_record ( ) konst ;
} ;

poništiti NewClass :: postaviti_rekord ( int x ) { ja = x ; }
int NewClass :: get_record ( ) konst { povratak ja ; }

int glavni ( )
{
Nova klasa c ;
c. postaviti_rekord ( 10 ) ;
cout << c. get_record ( ) ;

povratak 0 ;
}

Ovdje prvo uspostavljamo klasu, 'NewClass', gdje inicijaliziramo varijablu 'i' koja ostaje privatna. Nakon toga imamo ključnu riječ public gdje su definirane funkcije članice set_record() i get_record(). Funkcija članica set_record() koristi se za postavljanje vrijednosti varijable 'i', a funkcija get_record() ovdje se koristi za vraćanje vrijednosti varijable 'i'. Imajte na umu da koristimo ključnu riječ 'const' s funkcijom članom get_record() koja je predstavlja kao funkciju članom const, a stanje objekta ne može se mijenjati. Nakon toga imamo definiciju funkcije set_record() za postavljanje vrijednosti varijable 'i'.



Slično, imamo definiciju funkcije get_record() za dohvaćanje vrijednosti varijable 'i'. Zatim smo postavili funkciju main() gdje imamo deklaraciju “c” objekta klase “NewClass”. Zatim se poziva 'set_record', nekonstantna funkcija članica, da dodijeli vrijednost varijabli 'z'. Idemo dalje, pozivamo funkciju člana get_record() const za ispis vrijednosti 'i'.

Vrijednost varijable privatnog člana poziva funkcija člana const i prikazana je u sljedećem odzivniku:

Primjer 3: Program funkcije člana Const definirane izvan klase kao nezavisna funkcija

Međutim, implementiramo drugi slučaj funkcije člana const gdje se funkcija člana s ključnom riječi 'const' poziva izvan klase kao samostalna funkcija.

#include
korištenjem imenski prostor std ;
razreda Jednadžba {
int n1,n2 ;
javnost :
poništiti skup_jednadžbe ( int x, int i )
{
n1 = x ;
n2 = i ;
}
poništiti prikaži_jednadžbu ( )
{
cout << 'Jednadžba je: ' << n1 << '+' << n2 << 'b' << endl ;
}
prijatelju poništiti zabavno je ( konst Jednadžba ) ;
} ;
poništiti zabavno je ( konst Jednadžba obj )
{
cout << 'Funkcija koja koristi jednadžbu je: ' << obj. n1 << '+' << obj. n2 << 'b' << endl ;
}
int glavni ( )
{
Jednadžba obj ;
obj. skup_jednadžbe ( 5 , 8 ) ;
obj. prikaži_jednadžbu ( ) ;
zabavno je ( obj ) ;
}

Ovdje stvaramo klasu 'Equation()', a zatim deklariramo varijable 'n1' i 'n2'. Ovdje također dodajemo funkciju članicu set_Equation() za postavljanje vrijednosti varijabli 'n1' i 'n2'. Funkcija show_Equation() prikazuje jednadžbu koja je generirana pomoću ovih varijabli.

Nakon toga, imamo deklaraciju funkcije funIs() koja je definirana pomoću ključne riječi 'prijatelj'. Ova ključna riječ 'prijatelj' omogućuje nam pristup privatnom članu klase 'Equation'. Zatim pozivamo prijateljsku funkciju “funIs()” izvan klase i unosimo parametar “obj” klase “Equation” kao const. Na kraju imamo funkciju main() u kojoj deklariramo objekt klase “Equation”. Zatim postavljamo vrijednosti varijabli 'n1' i 'n2' pomoću funkcije set_Equation(). Varijable 'n1' i 'n2' koriste se za prikaz njihovih vrijednosti pomoću funkcije show_Equation(). Na kraju, pozivamo funkciju prijatelja 'funIs' klase 'Equation' za prikaz jednadžbe.

Jednadžba i jednadžba koja koristi funkciju const friend prikazane su na upitu:

Primjer 4: Program funkcije člana Const za ažuriranje vrijednosti u C++ (najgori slučaj)

Program demonstrira najgori scenarij funkcije člana const gdje pokušavamo modificirati vrijednost varijable pod nazivom 'unutar funkcije člana const'.

#include
korištenjem imenski prostor std ;

razreda Podaci {
int u ;

javnost :
poništiti setValue ( int ja ) { u = ja ; }
int getValue ( ) konst
{

++ u ;
povratak u ;
}

} ;

int glavni ( )
{
Podaci d ;
d. setValue ( dvadeset ) ;
cout << endl << d. getValue ( ) ;

povratak 0 ;
}

Ovdje prvo konstruiramo klasu “Data” i deklariramo varijablu “v” unutar klase. Nakon toga postavljamo ključnu riječ 'public' i zatim deklariramo funkcije članice klase 'setValue()' koja predstavlja konstruktor klase i getValue() koja označava funkciju člana klase getter. Funkcija setValue() uzima varijablu 'i' kao parametar. Ova varijabla 'i' dodijeljena je varijabli člana 'v'.

Nakon toga, imamo definiciju funkcije getValue() gdje dohvaćamo vrijednost varijable “v”. Budući da je funkcija getValue() deklarirana ključnom riječi 'const', što znači da se vrijednost varijable 'v' ne može ažurirati ni u kojem slučaju. Međutim, namjerno pokušavamo povećati varijablu 'v' kako bismo promijenili njezinu vrijednost. Kada program dođe do ove faze, javlja se pogreška. Na kraju, imamo poziv funkcije main() gdje definiramo objekt 'd' klase 'Podaci' i postavljamo vrijednost '20' za ovaj objekt 'd'. Nakon toga pozivamo funkciju getValue() da dobijemo vrijednost 'd' objekta.

Prompt generira rezultate prethodne implementacije gdje daje pogrešku na '++v' jer nam nije dopušteno mijenjati vrijednost objekata funkcije člana const:

Zaključak

Zaključno, zaronimo u funkciju const C++ koja se koristi za izbjegavanje slučajnih promjena vrijednosti programa. Funkcije članice const u C++ su funkcije samo za čitanje čije izmjene objekata na kojima se pozivaju nisu dopuštene. Također smo implementirali različite scenarije funkcije const kako bismo demonstrirali njezinu funkcionalnost u C++.