设为首页 加入收藏

TOP

关于类的static数据成员和成员函数
2014-11-18 15:10:23 】 浏览:4360
Tags:关于 static 数据 成员 函数

  类static成员的两个问题:


  如果需要在一个类的各个对象间交互,即需要一个数据对象为整个类而非某个对象服务,这个时候常用类成员来解决问题。


  1、静态数据成员要在类外定义。


  2、类的静态成员函数是属于整个类而非类的对象,所以它没有this指针,这就导致了它仅能访问类的静态数据和静态成员函数,如果一定要访问成员变量,可以在参数中传入对象,通过对象可以访问类的私用和公有成员。


  例如:


  class CA


  {


  public:


  CA( int a1 );


  int a;


  // int sum();


  static int sum( CA *A);


  private:


  static int count; //= 30; //= 0;


  };


  int CA::count;


  CA::CA( int a1 )


  {


  a = a1;


  }


  int CA::sum( CA *A) /////////static函数sum调用了类的非静态变量a


  {


  if(A->a > 30 )


  {


  return 0;


  }


  else


  {


  return 1;


  }


  }


  void main()


  {


  CA A( 1 );


  A.sum( &A );


  }


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Crest的语法:宏的魔术汇演 下一篇线性表:顺序储存结构

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目