private和public称为成员访问限定符

来源:互联网 发布:大隈数控车床编程 编辑:程序博客网 时间:2024/06/05 03:39

     private和public称为成员访问限定符(member access specifier)。除了private和public之外,还有一种成员访问限定符protected(受保护的),用protected声明的成员称为受保护的成员,它不能被类外访问(这点与私有成员类似),但可以被派生类的成员函数访问。


      在C++中声明一个类的类型和声明一个结构体类型是相似的。下面是声明一个结构体类型的方法:



  7structStudent//声明了一个名为Student的结构体类型


  {intnum;charname[20];charsex;};Studentstud1,stud2;//定义了两个结构体变量stud1和stud2,它只包括数据,没有包括操作
声明一个类:15classStudent//以class开头{ intnum;charname[20];charsex;//以上3行是数据成员voiddisplay()//这是成员函数


  {cout<<″num:″<cout<<″name:″<cout<<″sex:″<};//以上4行是函数中的操作语句};Studentstud1,stud2;//定义了两个对象stud1和stud2


  可以看到声明类的方法是由声明结构体类型的方法发展而来的,类就是对象的类型。实际上,类是一种广义的数据类型。类这种数据类型中的数据既包含数据,也包含操作数据的函数。


  不能把类中的全部成员与外界隔离,一般是把数据隐蔽起来,而把成员函数作为对外界的接口。可以将上面类的声明改为16classStudent//以class开头{private://声明私有成员intnum;charname[20];charsex;public://声明公共成员voiddisplay()Studentstud1,stud2;//定义了两个对象stud1和stud2如果在类的定义中既不指定private,也不指定public,则系统就默认为是私有的。归纳以上对类类型的声明,可得到其一般形式如下:8class类名{private://私有的数据和成员函数;public://公用的数据和成员函数;};


  
在声明类类型时,声明为private的成员和声明为public的成员的次序任意,既可以先出现private部分,也可以先出现public部分。


  在一个类体中,关键字private和public可以分别出现多次。每个部分的有效范围到出现另一个访问限定符或类体结束时(最后一个右花括号)为止。但是为了使程序清晰,应该养成这样的习惯: 使每一种成员访问限定符在类定义体中只出现一次。


  C++ 程序多数先写public部分,把private部分放在类体的后部。这样可以使用户将注意力集中在能被外界调用的成员上,使阅读者的思路更清晰一些。


  在C++程序中,经常可以看到类。为了用户方便,常用的C++编译系统往往向用户提供类库(但不属于C++语言的组成部分),内装常用的基本的类,供用户使用。不少用户也把自己或本单位经常用到的类放在一个专门的类库中,需要用时直接调用,这样就减少了程序设计的工作量。
0 0