计算机应用 | 古代文学 | 市场营销 | 生命科学 | 交通物流 | 财务管理 | 历史学 | 毕业 | 哲学 | 政治 | 财税 | 经济 | 金融 | 审计 | 法学 | 护理学 | 国际经济与贸易
计算机软件 | 新闻传播 | 电子商务 | 土木工程 | 临床医学 | 旅游管理 | 建筑学 | 文学 | 化学 | 数学 | 物理 | 地理 | 理工 | 生命 | 文化 | 企业管理 | 电子信息工程
计算机网络 | 语言文学 | 信息安全 | 工程力学 | 工商管理 | 经济管理 | 计算机 | 机电 | 材料 | 医学 | 药学 | 会计 | 硕士 | 法律 | MBA
现当代文学 | 英美文学 | 通讯工程 | 网络工程 | 行政管理 | 公共管理 | 自动化 | 艺术 | 音乐 | 舞蹈 | 美术 | 本科 | 教育 | 英语 |

论静态成员在C++中的应用

2013-08-13 01:13
导读:计算机应用论文论文,论静态成员在C++中的应用论文样本,在线游览或下载,科教论文网海量论文供你参考:     [关键词]C++ 静态成员 共享   [论文
  
  [关键词]C++ 静态成员 共享
  [论文摘要]
C++类中的静态成员是类中各个对象所共享的成员,从数据共享的角度出发,介绍静态成员在类中实现数据共享的方法、作用。
  
  C++中类的成员分为静态数据成员和静态成员函数。它的作用类似于全局变量,可以实现C++多个对象之间的数据共享,但全局变量在程序中的可操作性难于控制,经常会带来不安全性,所以,考虑到程序的安全性,作者在本文讲述了静态成员在C++程序中的使用方法及作用。
  
  一、静态数据成员的应用
  
  C++中的静态数据成员是同一个类中所有对象所共享的成员,静态数据成员中存放的是所有对象的值,不是某一个对象的值,所以同一类中的每个对象的值都是一样,但它的值也是可以改变的。通过下面的实例可以对以上的内容加以证实、说明静态数据成员在C++类中的使用方法及作用。
  (一)静态数据成员的定义、初始化
  静态数据成员定义是以static关键字开始,后跟静态数据成员类型符、变量名;例:staticints;
  (二)静态数据成员的初始化
  静态数据成员的初始化是在类体外进行,初始化时不用加访问权限符,但是静态成数据成员是类的成员,所以在初始化时应指明该成员的类名;例如在类名为 Tstu的类中定义了一名为s整型静态数据成员,则初始化格式为:int Tstu::s =0;
  (三)静态数据成员的引用实例
  #include
  class Tstu//类的说明;
   {public://定义二个成员函数;
   Tstu(int a,int b); //定义构造函数,用来对数据成员赋初值;
   bb( );
   private:
  int x,y;//定义二个数据成员;
  static int s;};//定义一个静态的数据成员,类Tstu定义结束;
(转载自中国科教评价网http://www.nseac.com

  int Tstu::s=0; //静态数据成员的赋值;
  Tstu::Tstu(int a,int b)//构造函数的实现部分;
  { x=a;y=b;}
  void Tstu::bb( )//成员函数的实现部分;
  {s=s+x+y;cout<<”s=”<  void main( )//主函数;
  {Tstu t1(10,20),t2(5,3);
   t1.bb( );t2.bb( );}
  对于以上的程序,类Tstu中的t1对象调用成员函数bb( )之后,静态数据成员s中的值是30,那么对象t2在调用前,对于对象t2,s中的值已是30,因为s中的值是每个对象所共享的,t2对象调用后,s中最后的值是38。
  我们再来看以下代码:
  #include
  class Ta{
  public:
  Ta(){n++; } //定义构造函数,当定义对象时n的值自动加1;
  ~Ta(){n--; } //定义析构函数,释放对象时n的值自动减1;
  int sum(){return n; }//成员函数sum( )用来返回静态数据成员n的值;
  private:
   static int n;};
  int Ta::n = 0;
上一篇:关于RAID技术浅析 下一篇:没有了