In C++ ist static ein Schlüsselwort oder Modifikator, der zum Typ und nicht zur Instanz gehört. Für den Zugriff auf die statischen Mitglieder ist also keine Instanz erforderlich. In C++ kann statisch ein Feld, eine Methode, ein Konstruktor, eine Klasse, Eigenschaften, ein Operator und ein Ereignis sein.
Vorteil des statischen C++-Schlüsselworts
Speichereffizient: Jetzt müssen wir keine Instanz mehr für den Zugriff auf die statischen Mitglieder erstellen, wodurch Speicherplatz gespart wird. Darüber hinaus gehört es zum Typ, sodass es nicht jedes Mal, wenn eine Instanz erstellt wird, Speicher erhält.
Statisches C++-Feld
Ein als statisches Feld deklariertes Feld wird als statisches Feld bezeichnet. Im Gegensatz zu Instanzfeldern, die jedes Mal, wenn Sie ein Objekt erstellen, Speicher abrufen, wird im Speicher nur eine Kopie des statischen Felds erstellt. Es wird von allen Objekten geteilt.
Java int zu char
Es wird verwendet, um auf die gemeinsame Eigenschaft aller Objekte zu verweisen, z. B. „rateOfInterest“ im Fall von „Account“, „companyName“ im Fall von „Employee“ usw.
Beispiel für ein statisches C++-Feld
Sehen wir uns das einfache Beispiel eines statischen Felds in C++ an.
angrenzende Winkel
#include using namespace std; class Account { public: int accno; //data member (also instance variable) string name; //data member(also instance variable) static float rateOfInterest; Account(int accno, string name) { this->accno = accno; this->name = name; } void display() { cout< <accno<< '<<name<< ' '<<rateofinterest<<endl; } }; float account::rateofinterest="6.5;" int main(void) { account a1="Account(201," 'sanjay'); creating an object of employee a2="Account(202," 'nakul'); a1.display(); a2.display(); return 0; < pre> <p>Output:</p> <pre> 201 Sanjay 6.5 202 Nakul 6.5 </pre> <hr> <h2>C++ static field example: Counting Objects</h2> <p>Let's see another example of static keyword in C++ which counts the objects.</p> <pre> #include using namespace std; class Account { public: int accno; //data member (also instance variable) string name; static int count; Account(int accno, string name) { this->accno = accno; this->name = name; count++; } void display() { cout< <accno<<' '<<name<<endl; } }; int account::count="0;" main(void) { account a1="Account(201," 'sanjay'); creating an object of a2="Account(202," 'nakul'); a3="Account(203," 'ranjana'); a1.display(); a2.display(); a3.display(); cout<<'total objects are: '< <account::count; return 0; < pre> <p>Output:</p> <pre> 201 Sanjay 202 Nakul 203 Ranjana Total Objects are: 3 </pre></accno<<'></pre></accno<<>
Beispiel für ein statisches C++-Feld: Zählen von Objekten
Sehen wir uns ein weiteres Beispiel für ein statisches Schlüsselwort in C++ an, das die Objekte zählt.
#include using namespace std; class Account { public: int accno; //data member (also instance variable) string name; static int count; Account(int accno, string name) { this->accno = accno; this->name = name; count++; } void display() { cout< <accno<<\' \'<<name<<endl; } }; int account::count="0;" main(void) { account a1="Account(201," \'sanjay\'); creating an object of a2="Account(202," \'nakul\'); a3="Account(203," \'ranjana\'); a1.display(); a2.display(); a3.display(); cout<<\'total objects are: \'< <account::count; return 0; < pre> <p>Output:</p> <pre> 201 Sanjay 202 Nakul 203 Ranjana Total Objects are: 3 </pre></accno<<\'>