zoukankan      html  css  js  c++  java
  • class中static总结-静态成员函数和静态成员变量

    C++规定const静态类成员可以直接初始化,其他非const的静态类成员需要在类声明以外初始化,我们一般选择在类的实现文件中初始化,初始化的方式是书写一遍类型的定义:

    //A.cpp
    int A::n(9);              //使用字面量9来初始化n
    vector<int> A::buf(100);  //调用vector的带参构造函数来初始化

    一、静态成员函数中不能调用非静态成员。

    二、非静态成员函数中可以调用静态成员。因为静态成员属于类本身,在类的对象产生之前就已经存在了,所以在非静态成员函数中是可以调用静态成员的。

    三、静态成员变量使用前必须先初始化(如int MyClass::m_nNumber = 0;),否则会在linker时出错。

    四、const静态类成员可以直接初始化,其他非const的静态类成员需要在类声明以外初始化。

    五、静态成员函数独立与对象,直接使用类名加上作用域运算符就可以调用函数,当做作用域运算符就可以直接调用

    参考

    与类实例无关。
    把类名当成namespace用。
    控制该函数的访问权限。
    控制类内的static变量。

    参考:

  • 相关阅读:
    mkfs
    Nginx配置指令location匹配符优先级和安全问题
    Nginx 403 Forbidden
    nginx 开机启动脚本 可以使用systemctl enable service 添加开机启动
    systemctl
    Pycharm 项目设置Github账户
    sql存储过程
    vim 替换模式
    python--爬虫小案例
    python--正则表达式
  • 原文地址:https://www.cnblogs.com/dingxiaoqiang/p/8257846.html
Copyright © 2011-2022 走看看