• static数据成员与const数据成员的定义与初始化


    三种数据类型的初始化
    • 1.static int a 的初始化
    • const int a 的初始化
    • static const int a的初始化
    三种初始化方式
    • 在类外初始化
    • 在构造函数中通过初始化列表初始化
    • 在声明的同时初始化 
    一.static数据成员
        静态成员:静态类中的成员加入static修饰符,即是静态成员.可以直接使用"类名.静态成员名"访问此静态成员,因为静态成员存在于内存,非静态成员需要实例化才会分配内存,所以静态成员函数不能访问非静态的成员..因为静态成员存在于内存,所以非静态成员函数可以直接访问类中静态的成员.
        静态数据成员在程序中也只有一份拷贝,由该类型的所有对象共享访问。
        静态数据成员存储在全局数据区
       静态数据成员定义时要分配空间,所以不能在类声明中定义。它不属于特定的类对象,在没有产生类对象时其作用域就可见,即在没有产生类的实例时,我们就可以操作它; 
        静态数据成员初始化的格式为: 
        <数据类型><类名>::<静态数据成员名>=<值> 
        类的静态数据成员有两种访问形式: 
        <类对象名>.<静态数据成员名> 或 <类类型名>::<静态数据成员名> 

     

    二.const数据成员初始化方式 
    通过构造函数列表初始化,不能在构造函数里初始化

    总结:
    static int a要在类外初始化
    const int a要在构造函数初始化列表中初始化
    static const int a可以在声明的时候初始化,也可以在类外初始化。但不可以通过构造函数初始化列表初始化
  • 相关阅读:
    【SAS NOTES】将文本转化为数据格式 input()
    【SAS NOTES】proc tabulate遇到的问题
    【SAS NOTES】proc sql
    【SAS NOTES】转载 sas函数&模块
    【SAS NOTE】substr字符串提取函数
    【SAS NOTES】输出结果到excel
    【SAS NOTES】脏数据
    【SAS NOTES】字符串处理函数
    【SAS NOTES】实际分析应用
    多项式的乘法满足结合律和交换律
  • 原文地址:https://www.cnblogs.com/happygirl-zjj/p/4636208.html
Copyright © 2020-2023  润新知