Rozdiel medzi statickou a konštantnou funkciou v C++
Statická funkcia : Je to členská funkcia, ktorá sa používa len na prístup k C++
// C++ program to illustrate the use> // of static function> #include 'bits/stdc++.h'> using> namespace> std;> > class> A {> public> :> > static> void> f()> > {> > cout < <> 'techcodeview.com!'> ;> > }> };> > // Driver Code> int> main()> {> > A::f();> }> |
Výkon:
techcodeview.com!
Program 2:
C++
// C++ program to illustrate the use> // of const keyword> > #include> using> namespace> std;> > // Driver Code> int> main()> {> > const> double> a = 1;> > > // Using the below line of code> > // gives error> > // a = 2.21;> > > cout < < a < < endl;> > > return> 0;> }> |
Výkon:
1
Tabuľkový rozdiel medzi statickou funkciou a konštantnou funkciou:
| Statická funkcia | Konštantná funkcia |
|---|---|
| Deklaruje sa pomocou statické kľúčové slovo . | Deklaruje sa pomocou kľúčové slovo const . |
| Neumožňuje opätovnú úpravu premenných alebo údajových členov alebo funkcií. Namiesto toho je pridelená na celú dobu trvania programu. | Umožňuje určiť, či je premenná modifikovateľná alebo nie. |
| Pomáha volať funkcie, ktoré používajú triedu bez použitia objektov. | Pomáha nám vyhnúť sa úpravám objektov. |
| Túto funkciu môžu volať len statické dátové členy a statické členské funkcie. | Túto funkciu je možné volať pomocou akéhokoľvek typu objektu. |
| Je užitočné deklarovať globálne údaje, ktoré by sa mali aktualizovať, kým je program v pamäti, použiť na obmedzenie prístupu k funkciám, opätovné použitie rovnakého názvu funkcie v iných súboroch atď. | Je to užitočné s ukazovateľmi alebo odkazmi odovzdanými funkcii, používa sa na zabránenie náhodným zmenám objektu, môže byť volaný akýmkoľvek typom objektu atď. |
| Je to členská funkcia, ktorá vo všeobecnosti umožňuje prístup k funkcii pomocou triedy bez použitia inštancie triedy. | Je to členská funkcia, ktorá je v programe všeobecne deklarovaná ako konštantná. |