• 静态成员函数——static


    "静态成员函数是类的成员函数,该函数不属于该类申请的任何一个对象,而是所有该类成员共同共有的一个函数。静态成员函数的作用是为了能处理静态数据成员。"这是网上某位大牛对其的解释,但是我个人觉得这种解释不太准确。什么也不说直接上个例子吧

    #include "stdafx.h"

    #include <iostream>

    #include "Student.h"

    using namespace std;

    class s

    {

    public:

       s(){}

       static void switchmode(int imode)

       {

          cout<<"last mode "<<s::m_ilastmode<<endl;

          cout<<"new mode "<<imode<<endl;

          s::m_ilastmode=imode;

       }

    protected:

       static int m_ilastmode;

    };

    int s::m_ilastmode=0;

    class A

    {

    public:

       A(){}

       void print_mode(int imode)

       {

          s::switchmode(imode);

       }

    };

    int _tmain(int argc, _TCHAR* argv[])

    {

       int n=0;

       cout<<"please putin lap count"<<endl;

       cin>>n;

       A a;

       for (int i=1;i<n;i++)

       {

          a.print_mode(i);

       }

       system("PAUSE");

       return 0;

    }

    运行后的结果

     please putin lap count

    9

    last mode 0

    new mode 1

    last mode 1

    new mode 2

    last mode 2

    new mode 3

    last mode 3

    new mode 4

    last mode 5

    new mode 6

    last mode 7

    new mode 8

    结论:

    其实静态成员函数可以认为是用来处理静态成员变量的,静态成员变量的用法大家应该很熟悉。类的静态成员变量实际上只有一个,它不随着类的实例的创建/销毁而增加/减少。它不是类的真正成员,并不是类的一部分。

  • 相关阅读:
    fzu 2122
    hdu 4707 bellman
    sicily 10330. Cutting Sausages
    湖南省2016省赛题。1809: Parenthesis 线段树
    Panoramic Photography
    B. No Time for Dragons 贪心
    The Weakest Sith
    E. The Best among Equals
    Gym 101149I I
    AtCoder D
  • 原文地址:https://www.cnblogs.com/liuliu-NoGirl/p/4086325.html
Copyright © 2020-2023  润新知