zoukankan      html  css  js  c++  java
  • static 变量(静态变量)

           在C++的面向对象编程中,static还可以加在类的数据成员或成员函数之前。这样定义的数据成员或成员函数就被类所拥有,而不再属于类的对象

    #include <iostream>
    using namespace std;
    class widget
    {
      public:
        widget()
        {
            count++;
        }
        ~widget()
        {
          --count;
        }
    
        static int num()
        {
          return count;
        }
      private:
        static int count;
    };
    
    int widget::count = 0;
    
    int main()
    {
      widget x,y;
      cout<<"The Num.is"<<widget::num()<<endl;
      if(widget::num() > 1)
      {
        widget x,y,z;
        cout<<"The Num.is"<<widget::num()<<endl;
      }
      widget z;
      cout<<"The Num.is"<<widget::num()<<endl;
      return 0;
    }

           类widget有一个静态成员count和一个静态方法num()。类中的静态成员或方法不属于类的实例,而属于类本身并在所有类的实例间共享。在调用它们时应该用类名加上操作符“::"来引用。

           注意代码中构造函数将静态成员count的值加1,在析构函数中将静态成员函数减1。也就是说静态成员count的值表示类widget实例的个数。

           运行结果:

    The Num.is2
    The Num.is5
    The Num.is3


  • 相关阅读:
    Post返回json值
    调用接口并获取放回json值
    c# 获取IP
    sqlserver2008不允许保存更改
    判断客户端是否是手机或者PC
    3.docker tomcat集群
    1.docker 安装
    Maven profiles 多环境配置
    MySQL 定时任务
    MyBatis 三剑客
  • 原文地址:https://www.cnblogs.com/wangfengju/p/6172431.html
Copyright © 2011-2022 走看看