En C++, static és una paraula clau o modificador que pertany al tipus no a la instància. Per tant, la instància no és necessària per accedir als membres estàtics. En C++, l'estàtica pot ser camp, mètode, constructor, classe, propietats, operador i esdeveniment.
Avantatge de la paraula clau estàtica C++
Eficaç de la memòria: Ara no necessitem crear una instància per accedir als membres estàtics, de manera que estalvia memòria. A més, pertany al tipus, de manera que no obtindrà memòria cada vegada que es creï la instància.
Camp estàtic C++
Un camp que es declara com a estàtic s'anomena camp estàtic. A diferència del camp d'instància que obté memòria cada vegada que creeu un objecte, només hi ha una còpia del camp estàtic creada a la memòria. Es comparteix amb tots els objectes.
L'actriu Sai Pallavi
S'utilitza per referir la propietat comuna de tots els objectes, com ara rateOfInterest en cas de compte, companyName en cas d'empleat, etc.
Exemple de camp estàtic C++
Vegem un exemple senzill de camp estàtic en C++.
algorismes de cerca binària
#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<<>
Exemple de camp estàtic de C++: comptar objectes
Vegem un altre exemple de paraula clau estàtica en C++ que compta els objectes.
#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<<\'>