Mi a statikus tagfüggvény a C ++ nyelven?



Ez a cikk részletes és átfogó ismereteket nyújt a C ++ statikus tagjainak funkcióiról, példákkal.

A statikus a C és a C ++ kulcsszó, amelyet egy változó vagy egy függvény speciális típusának deklarálására használnak az osztályon belül vagy kívül. Ebben a bejegyzésben röviden megértjük a statikus tagváltozók és a statikus tagfüggvények fogalmát c ++ -ban, és összehasonlítjuk őket a normál változókkal és függvényekkel a következő sorrendben:

Statikus tagváltozók

A statikusnak minősített változók szintén a C részei. Tegyük fel, hogy egy függvényben 2 változó van, az egyik egy normál változó, a másik pedig egy statikus változó. A normál változó akkor jön létre, amikor a függvény meghívásra kerül, és hatóköre korlátozott. Míg a statikus változót egyszer létrehozzák és a program végén megsemmisítik. Ezeknek a változóknak az egész életük élettartama.





#include névtér használatával stid void Test () {static int x = 1 x = ++ x int y = 1 y = ++ y cout<<'x = '<

Kimenet:

static-member-variables-1



A fenti kimenetből arra következtethetünk, hogy minden alkalommal, amikor a Test () függvényt az „y” változó másolatának hívták, míg a Test () függvény meghívásakor ugyanazt az „x” változó másolatát használták.

Most beszéljük meg a statikus változók jellemzőit

adatstruktúrák és algoritmusok a java-ban
  1. A statikus változókat 0-ra inicializálják. Csak egyszer inicializálják.



  2. A program során a statikus tagváltozónak csak egy példánya jön létre az egész osztályra, ezért a statikus tagváltozókat osztályváltozóknak is nevezzük. Az osztály minden példánya megosztja.

  3. A statikus tag változó csak az osztályon belül látható, de élettartama a program végéig tart.

Vegyünk egy példát egy statikus tagváltozóra egy osztályban.

#include névtér használatával std class Példa {static int x public: void function1 () {x ++} void function2 () {cout<<'x = '<

Kimenet:

A fenti kimenetből láthatjuk, hogy az ‘x’ változó az összes objektumon meg van osztva. A statikus adatváltozók fogalmának részletes megértéséhez gondolhatunk egy olyan könyvtárra, ahol több könyv található különböző polcokon. Tekintsük a könyvtárat osztálynak, egy bizonyos „x” könyv helyzetét statikus tagváltozónak, a tanulókat pedig az osztály tárgyainak. Amikor az első hallgatómegérkezett, amikor az „x” új pozícióba került, amikor egy másik hallgató érkezik, az „x” nem tér vissza eredeti helyzetébe, de ott marad, ahol az első hallgató elhagyta.

Statikus tagfunkciók C ++ nyelven

A statikus tagváltozókhoz hasonlóan vannak statikus tagfüggvények is, amelyeket egy meghatározott célra használunk. A statikus tagfüggvény létrehozásához a statikus kulcsszót kell használnunk a függvény deklarálásakor. Mivel a statikus tagváltozók osztálytulajdonságok és nem objektumtulajdonságok, ezek eléréséhez az objektumnév helyett az osztály nevét kell használnunk.

hogyan hajtható végre a hashmap a java-ban

A statikus tagfunkciók tulajdonságai:

  1. A statikus függvény csak más statikus változókhoz vagy ugyanabban az osztályban jelen lévő függvényekhez férhet hozzá

  2. A statikus tagfüggvényeket az osztálynév segítségével hívjuk meg. Szintaxis-osztálynév :: függvény_neve ()

Vegyünk egy klasszikus példát a statikus tagfunkciók fogalmának részletes megértéséhez. Ebben a példában megértjük a statikus tagfüggvényekkel kapcsolatos összes fogalmat.

#include névtér használatával std class Példa {static int Szám int n public: void set_n () {n = ++ Szám} void show_n () {cout<<'value of n = '<

az unió záradék szokott

A fenti kimenetből láthatjuk, hogy az „n” változó értéke mind a „Példa” osztály „példa1”, mind „példa2” objektumainál eltérő. Mivel a „Szám” változó osztályváltozó, az értéke megegyezik mind a „példa1”, mind a „példa2” objektumokkal. Statikus tagváltozókat és függvényeket használunk, ha közös értékeket kell megosztani az összes objektumon. A programozás során a statikus kulcsszó használatát okosan kell végrehajtani.

Ezzel a c ++ statikus tagfüggvényéről szóló cikk végére értünk. Ha többet szeretne megtudni, nézze meg a Edureka, egy megbízható online tanulási társaság. Az Edureka Java J2EE és SOA képzési és tanúsítási tanfolyamát arra tervezték, hogy mind az alapvető, mind a fejlett Java koncepciókra kiképezzen különféle Java keretrendszereket, például a Hibernate & Spring.

Van egy kérdésünk? Kérjük, említse meg a blog megjegyzés rovatában, és a lehető leghamarabb kapcsolatba lépünk Önnel.