Statikus C++ módszer

Statikus C Modszer



A C++-ban egy metódus függvényként is ismert, és a metódusok használata a C++-ban elősegíti a moduláris programozás és a kód újrafelhasználhatóságának koncepcióját. Ez azt jelenti, hogy az egyszer megírt metódusok annyiszor ismétlődően hívhatók, ahányszor szükséges, anélkül, hogy minden alkalommal le kellene írni őket. Ezek a módszerek a következő három alapvető tulajdonsággal rendelkeznek:
  • A statikus metódusok közvetlenül lekérhetők az osztálynévvel és a hatókör-feloldó operátorral, objektum létrehozása nélkül.
  • Egy osztály statikus metódusai csak az adott osztály statikus tagjaihoz férhetnek hozzá.
  • A statikus metódusok nem férhetnek hozzá egy osztály nem statikus tagjaihoz.

Ezt a cikket azért hoztuk létre, hogy megtanítsuk a statikus metódusok használatát a C++ nyelven az Ubuntu 20.04-ben.

A statikus módszer használata a C++ nyelven az Ubuntu 20.04-ben

A statikus metódusok használatához a C++-ban az Ubuntu 20.04-ben, először végig kell mennie az alábbi példákon, hogy jó ötlete legyen ezeknek a függvényeknek a C++-ban való működéséről.







1. példa: A statikus metódusok első tulajdonságának feltárása C++ nyelven

Ebben a példában a statikus metódusok első tulajdonságát kívánjuk feltárni a C++ nyelvben; egy osztály statikus metódusai közvetlenül elérhetők az osztálynévvel, miközben a hatókörfeloldó operátort használjuk. Ehhez írtunk egy C++ szkriptet, amely a következő képen látható:



  Statikus C++ módszer



Ebben a C++ szkriptben definiáltunk egy „Number” nevű osztályt. Ennek az osztálynak a törzsén belül csak egy nyilvános funkciónk van. Ezt a függvényt „statikusnak” deklaráltuk. Ennek a függvénynek a neve ' PrintNum ”, és egyetlen paramétere az „n” szám. Ezen a függvényen belül egyszerűen ki akarjuk nyomtatni ennek az átadott számnak az értékét a terminálon. Amint láthatja, ehhez az osztályhoz nem definiáltunk egyetlen konstruktort sem. Ez azt jelenti, hogy nem áll szándékunkban létrehozni az objektumát. Ehelyett ennek az osztálynak a funkcióit közvetlenül fogjuk elérni.





Most a mi ' fő() ' funkciót, elértük a ' PrintNum ” a „Number” osztály függvényében az osztálynév és a hatókörfeloldó operátor segítségével. A függvény meghívásakor véletlen számot adtunk át neki, azaz 25-öt. fő() ” függvény a „return 0” utasítással zárul, mivel azt deklaráltuk, hogy egész szám visszatérési típusa van.

Amikor ezt a C++ szkriptet lefordítottuk és végrehajtottuk, a számunk helyesen lett kinyomtatva a terminálon, ahogy az alábbi képen is látható. Ez azt jelenti, hogy a C++ statikus metódusainak első tulajdonsága teljesült – a statikus metódusok közvetlenül elérhetők az osztálynévvel, objektum létrehozása nélkül, és pontosan úgy működnek, ahogyan azt tervezték.



  Statikus módszer a c++ nyelven

2. példa: A statikus módszerek második tulajdonságának feltárása C++ nyelven

Ebben a példában a statikus metódusok második tulajdonságát szeretnénk feltárni a C++ nyelvben; egy osztály statikus metódusai csak az adott osztály statikus tagjaihoz férhetnek hozzá. Ehhez írtunk egy C++ szkriptet, amely a következő képen látható:

Ebben a C++ szkriptben először definiáltunk egy „Number” nevű osztályt. Ennek az osztálynak a törzsén belül van egy „x” privát tagunk, amely egész adattípusú, és ezt statikussá tettük. Akkor csak egy nyilvános funkciónk van. Ezt a funkciót a következőképpen deklaráltuk: statikus ”. Ennek a függvénynek a neve ' PrintNum ”, és egyetlen paramétere az „n” szám. Ezen a függvényen belül ki akarjuk nyomtatni ennek az átadott számnak az értékét a terminálon és az „x” statikus tag értékét.

Ezt követően az osztályunkon kívüli osztálynév segítségével inicializáltuk az „x” statikus tagot „10” értékkel, anélkül, hogy ismét használnánk a „static” kulcsszót. Most a mi ' fő() ' funkciót, elértük a ' PrintNum ” a „Number” osztály függvényében az osztálynév és a hatókörfeloldó operátor segítségével. A függvény meghívása közben véletlen számot adtunk át neki, azaz 25-öt. fő() ” függvény a „return 0” utasítással zárul, mivel azt deklaráltuk, hogy egész szám visszatérési típusa van.

Amikor ezt a C++ szkriptet lefordítottuk és végrehajtottuk, a számunk, valamint az „x” változó értéke helyesen került kinyomtatásra a terminálra, ahogy az alábbi képen is látható. Ez azt jelenti, hogy a C++ statikus metódusainak második tulajdonsága teljesült – a statikus metódusok csak a C++ osztály statikus tagjaihoz férhetnek hozzá.

3. példa: A statikus metódusok harmadik tulajdonságának feltárása C++ nyelven

Ebben a példában a statikus metódusok harmadik tulajdonságát kívánjuk feltárni C++-ban, ami valójában a második tulajdonság kijelentésének másik módja; a statikus metódusok nem férhetnek hozzá egy osztály nem statikus tagjaihoz. Ehhez írtunk egy C++ szkriptet, amely a következő képen látható:

Ez a C++ szkript pontosan úgy néz ki, mint a második példában látható szkript. Az egyetlen különbség azonban az, hogy ezúttal nem deklaráltuk az „x” változót statikusnak.

Amikor ezt a C++ szkriptet lefordítottuk és végrehajtottuk, az alábbi képen látható hibaüzenet generált a terminálon, amely valami olyasmit közöl, hogy az „x” értéke nem érhető el statikus módszerrel C++-ban. Ez azt jelenti, hogy a statikus metódusok harmadik tulajdonsága teljesült a C++-ban – a statikus metódusok nem férhetnek hozzá egy osztály nem statikus tagjához sem C++-ban.

4. példa: Egymást követő tekercsszámok generálása a C++ statikus módszereivel

Ebben a példában csak átfogó képet akartunk adni arról, hogyan működnek a statikus metódusok C++-ban, a példáink összefoglalásával. Csak egy programot fogunk létrehozni, amely a megadott tartományon belül néhány tekercsszámot generál. Ehhez írtunk egy C++ szkriptet, amely a következő képen látható:

Ebben a C++ szkriptben van egy „RollNumber” nevű osztályunk. Ezen az osztályon belül van egy egész adattípusú „RollNum” privát statikus tagunk. Akkor van egy nyilvános statikus módszerünk ' getRollNum() ” egész szám visszatérési típussal. Ennek az osztálynak a definícióján kívül inicializáltuk a „RollNum” változónkat „1” értékkel, és definiáltuk a „ getRollNum() ” függvény is a növekményes „RollNum” visszaadásához minden alkalommal, amikor hívják.

Akkor a mi ' fő() ” függvény, van egy „for” ciklusunk, amely egy „0” és „9” közötti számlálóváltozón keresztül iterál, ami 10 iterációra szolgál. Ezen a cikluson belül ki akarjuk nyomtatni azt az értéket, amelyet a ' getRollNum() ” funkciót minden iterációhoz. Ismét a „ fő() ” függvény a „return 0” utasítással zárul.

Amikor ezt a C++ szkriptet lefordítottuk és végrehajtottuk, 10 különböző tekercsszámból álló sorozat jött létre a terminálon, amint az a következő képen látható:

Következtetés

A cikk célja az volt, hogy megtanítsuk a statikus metódusok használatát a C++ nyelven az Ubuntu 20.04-ben. Megosztottuk ezeknek a módszereknek az alapvető tulajdonságait, majd a négy példát, amelyeken keresztül azonnal megtudhatja, hogyan működnek ezek a módszerek C++ nyelven. A példák megértése után könnyen elsajátíthatja a C++ statikus metódusait. Reméljük, hogy hasznosnak találta ezt a cikket, és további informatív cikkekért tekintse meg a Linux Hint-et.