zoukankan      html  css  js  c++  java
  • C++入门--静态成员变量/函数

    
    

    静态成员变量:

    1、要单独的把实现写在类外(cpp)

    2、默认会用0对该成员进行初始化

    3、静态成员变量是同一个类的不同对象共用的

    4、本质上是一个带类域的全局变量(CInterger::m_static = 1;)

    #include <iostream>
    #include <string>
    using namespace std;
    
    class CInterger {
       public:
        CInterger(int nNumber) : m_nNumber(2) { m_nNumber = nNumber; }
        void SetNumber(int nNumber) { m_nNumber = nNumber; };
        static int m_nStatic;
    
       private:
        int m_nNumber;
    }; 
    
    int CInterger::m_nStatic;  //在类外(cpp)单独声明是哪一个类的静态成员
    
    int main(int argc, char const *argv[]) {
        CInterger i(1);
        i.m_nStatic = 2;
        return 0;
    }

      

    静态成员函数:

    1、在头文件的函数名前面加上关键字static

    2、函数内部不能访问普通成员变量,只能访问静态成员变量

    3、本质:静态成员函数中没有this指针,因此不能通过this指针访问到对象的普通成员变量

    4、静态成员函数实际上就是带类域的全局函数

    5、静态函数可以作为线程回调函数的声明

  • 相关阅读:
    Longest Common Prefix
    Roman to Integer
    Intger to Roman
    Container With Most Water
    Regular Expression Matching
    atoi
    Rotate List
    54. Search a 2D Matrix && Climbing Stairs (Easy)
    53. Minimum Window Substring
    52. Sort Colors && Combinations
  • 原文地址:https://www.cnblogs.com/y4247464/p/13825700.html
Copyright © 2011-2022 走看看