zoukankan      html  css  js  c++  java
  • static 成员小记

    基类有static成员时,派生类不会额外开辟一个空间存储static成员,而是基类子类公用。

    这几天在家休息,一直为退学的事情发愁,最后还是不敢退...

    #include <iostream>
    using namespace std;
     
    class Base
    {
    public:
        static int a;
        static void print()
        {
            cout << a << endl;
        }
     
        static void set(int number)
        {
            a = number;
        }
    };
     
    class Derived1 : public Base
    {
    };
     
    class Derived2 : public Base
    {
    };
     
    int Base::a = 100;
     
    int main(int argc, char** argv)
    {
            // 一下都是输出100
        Base::print();
        Derived1::print();
        Derived2::print();
     
            // 在Base中将a改为99,那么后面的两个输出也将变成99
        Base::set(99);
        Derived1::print();  
        Derived2::print();
     
        return 0;
    }
  • 相关阅读:
    原型污染
    C#之抛异常
    为什么['1', '7', '11'].map(parseInt) returns [1, NaN, 3]?
    Linux
    Linux
    Linux
    Linux
    Linux
    Linux
    其他
  • 原文地址:https://www.cnblogs.com/cavehubiao/p/3331998.html
Copyright © 2011-2022 走看看