zoukankan      html  css  js  c++  java
  • C++静态数据成员和静态成员函数

    在C++面向对象编程过程当中,对象与对象之间的数据不是共享,在设计类的时候,有时候需要一些对象之间共享的数据,除了把所要共享的数据设置为全局数据或者函数之外,还可以利用C++的静态机制。

    1、静态数据成员

    class 类名  
     {  
     ……  
     static 类型说明符 成员名;  
     ……  
     };

     静态数据成员是所有对象共享的,其所占的内存空间不会因为某个对象的产生而分配,也不会因为对象的销毁而消失。跟类中其他的非静态数据成员一样,被定义为private时,不能被外界访问。但是可以被类内任意访问权限的函数访问。

    关于静态数据成员的初始化:非静态成员可以在构造函数当中初始化,但是static不能在构造函数当中初始化,它的初始化,只能存在于全局区域,并且要指明是什么类的静态成员,可以用作用域符号“::”来指明。

    类名::静态数据成员
    

    就这么简单。

    当声明为public时候,可以被直接访问,修改而不通过静态成员函数。

    2、静态成员函数

    class 类名  
     {  
     …  
     static 类型 函数名(形参)  
     { 函数体 }  
     …  
     };
    

    静态成员函数当中不能访问任何权限的非静态数据成员,换句话说它只能访问static。在类外部调用静态成员函数的时候,不是简单的

    对象.静态成员函数
    

    这是普通成员函数的做法,

    类名::静态成员函数
    
    更多请访问:http://daoluan.net
  • 相关阅读:
    MSSQLSERVER数据库 变量和批处理
    MSSQLSERVER数据库 事务
    MSSQLSERVER数据库 使用C#来操作事务
    MSSQLSERVER数据库 视图
    Delphi中DBGrid行列颜色设置
    C#中调用SQL存储过程(带输入输出参数的例子)
    用Visual C#调用Windows API函数
    c#日期时间的操作的函数总结[转]
    C# 序列化与反序列化
    利用C#事务处理对数据库进行多重操作
  • 原文地址:https://www.cnblogs.com/daoluanxiaozi/p/2274636.html
Copyright © 2011-2022 走看看