C++静态static解释

本文概述

  • C ++静态关键字的优势
  • C ++静态字段
  • C ++静态字段示例
  • C ++静态字段示例:计数对象
在C ++中, static是属于类型而不是实例的关键字或修饰符。因此, 不需要实例来访问静态成员。在C ++中, static可以是字段, 方法, 构造函数, 类, 属性, 运算符和事件。
C ++静态关键字的优势【C++静态static解释】内存高效:现在, 我们无需创建实例来访问静态成员, 因此可以节省内存。而且, 它属于该类型, 因此, 每次创建实例时都不会获取内存。
C ++静态字段声明为静态的字段称为静态字段。与实例字段每次创建对象时都会获取内存的实例字段不同, 内存中仅创建了一个静态字段副本。它与所有对象共享。
它用于引用所有对象的公共属性, 例如Account时的rateOfInterest, Employee时的companyName等。
C ++静态字段示例让我们看一下C ++中静态字段的简单示例。
#include < iostream> 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 Account a2=Account(202, "Nakul"); //creating an object of Employee a1.display(); a2.display(); return 0; }

输出:
C ++静态字段示例:计数对象让我们看一下C ++中static关键字的另一个示例, 该示例对对象进行计数。
#include < iostream> 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; int main(void) { Account a1 =Account(201, "Sanjay"); //creating an object of Account Account a2=Account(202, "Nakul"); Account a3=Account(203, "Ranjana"); a1.display(); a2.display(); a3.display(); cout< < "Total Objects are: "< < Account::count; return 0; }

输出:
201 Sanjay 202 Nakul 203 Ranjana Total Objects are: 3

    推荐阅读