📅  最后修改于: 2020-10-16 06:58:12             🧑  作者: Mango
在C++中,static是属于类型而不是实例的关键字或修饰符。因此,不需要实例来访问静态成员。在C++中,static可以是字段,方法,构造函数,类,属性,运算符和事件。
内存高效:现在,我们无需创建实例来访问静态成员,因此可以节省内存。而且,它属于该类型,因此每次创建实例时都不会获取内存。
声明为静态的字段称为静态字段。与实例字段每次创建对象时都会获取内存的实例字段不同,内存中仅创建了一个静态字段副本。它与所有对象共享。
它用于引用所有对象的公共属性,例如对于Account来说是rateOfInterest,对于Employee来说是companyName。
让我们看一下C++中静态字段的简单示例。
#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<
输出:
让我们来看C++中static关键字的另一个示例,该示例对对象进行计数。
#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<
输出:
201 Sanjay
202 Nakul
203 Ranjana
Total Objects are: 3