logo

C++ statik

C++'da statik, örneğe değil türe ait olan bir anahtar kelime veya değiştiricidir. Dolayısıyla statik üyelere erişmek için örneğe gerek yoktur. C++'da statik, alan, yöntem, yapıcı, sınıf, özellikler, operatör ve olay olabilir.


C++ statik anahtar sözcüğünün avantajı

Bellek verimli: Artık statik üyelere erişmek için örnek oluşturmamıza gerek yok, bu nedenle bellekten tasarruf sağlar. Üstelik türe ait olduğundan her örnek oluşturulduğunda hafızaya alınmayacaktır.


C++ Statik Alan

Statik olarak bildirilen alana statik alan denir. Her nesne oluşturduğunuzda hafıza alan örnek alanın aksine, hafızada oluşturulan statik alanın yalnızca bir kopyası vardır. Tüm nesnelerle paylaşılır.

kovan mimarisi

Hesap durumunda oranOfInterest, Çalışan durumunda şirketAdı vb. gibi tüm nesnelerin ortak özelliğini belirtmek için kullanılır.


C++ statik alan örneği

C++'daki basit statik alan örneğini görelim.

geçersiz 0
 #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-&gt;accno = accno; this-&gt;name = name; } void display() { cout&lt; <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&apos;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-&gt;accno = accno; this-&gt;name = name; count++; } void display() { cout&lt; <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<<>

C++ statik alan örneği: Nesneleri Sayma

C++'da nesneleri sayan başka bir statik anahtar kelime örneğini görelim.

 #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-&gt;accno = accno; this-&gt;name = name; count++; } void display() { cout&lt; <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<<\'>