• static


    特点:

      一般情况,一个类实例化的不同对象的数据成员存储空间相互独立。

      若将类的一个成员定义为静态型的,则其实例化的所有对象的该成员用同一存储空间

    静态数据成员:

    1)定义:加关键字 static

    2)初始化:必须在类外进行初始化,格式:<类型标识符> <类名> :: <静态数据成员名> = <值>;

        例:int Sample :: sum = 0;

    静态成员函数:

    1)引用: <类名>::<静态成员函数名>

    2)访问数据成员:

      对于非静态数据成员:需要传入实例化对象,不可直接访问

      对于静态数据成员: 可直接访问,直接用静态数据成员名

    练习:剑指offer 面试题46

      题目: 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。

      通过构造函数和静态成员求解

      

    static作用:

    内存只分配一次,存在于全局区,在程序结束之后,由操作系统释放

    若static变量未初始化,默认初始化为0;

    1)函数体内,static变量

      作用范围:该函数体内

      值:下次调用时仍维持上次的值

    2)模块内,

      1)static全局变量:

          作用范围:模块内,可以被所有函数访问,但不能被模块外其他函数访问

      2)static函数:

          作用范围:模块内,可以被其他函数调用

    3)类内

      1)static成员变量

          作用范围:整个类所有,对类的所有对象只有一份复制(必须类外初始化

      2)static成员函数

          作用范围:整个类所有,不接受this指针,故只能访问类的static成员变量

      

        

  • 相关阅读:
    谈谈严格模式
    javascript回调函数那些事~
    border-radius:50%和100%究竟有什么区别
    canvas浅谈 实现简单的自旋转下落
    js中关于this的理解
    对js 面对对象编程的一些简单的理解
    ios中 input 焦点光标不垂直居中
    只能输入数字的正则表达式在火狐的兼容问题解决方法
    关于margin、padding 对内联元素的影响
    element ui 表格的合并
  • 原文地址:https://www.cnblogs.com/MissZhang-154/p/13494688.html
Copyright © 2020-2023  润新知