c++类中的各种成员,嵌套类,友元,this指针专题

c++类中的各种成员,嵌套类,友元,this指针专题

ID:8204750

大小:320.01 KB

页数:6页

时间:2018-03-10

c++类中的各种成员,嵌套类,友元,this指针专题_第1页
c++类中的各种成员,嵌套类,友元,this指针专题_第2页
c++类中的各种成员,嵌套类,友元,this指针专题_第3页
c++类中的各种成员,嵌套类,友元,this指针专题_第4页
c++类中的各种成员,嵌套类,友元,this指针专题_第5页
资源描述:

《c++类中的各种成员,嵌套类,友元,this指针专题》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、本文作者:黄邦勇帅学习本文首先你应熟悉C++中的构造函数,基本的类的声明及怎样初始化类,关于这些问题,请参看本人所作的《C++构造函数,复制构造函数和析构函数》一文,在这篇文章中作了详细的介绍。掌握C++类中的各种成员,是学习好C++的基础,因此对于本文的内容应全部熟练掌握,本文主要集中介绍C++类中的各种成员,这些成员分别是:类中的静态(static)成员变量,成员函数;const(常量)成员变量,成员函数和const对象;conststatic(常量静态)数据成员;对象数组;类中的对象成员;类成员指针;嵌套类;友元;this指针以及.*和->*运算符共12种内容。本文内容全面,简单易懂

2、,是学习C++不错的选择。本文内容完全属于个人见解与参考文现的作者无关,其中难免有误解之处,望指出更正。声明:禁止抄袭本文,若需要转载本文请注明转载的网址,或者注明转载自“黄邦勇帅”。主要参考文献:1、C++.Primer.Plus.第五版.中文版[美]StephenPrata著孙建春韦强译人民邮电出版社2005年5月2、C++.Primer.Plus.第四版.中文版StanleyB.Lippman、BarbaraE.Moo著李师贤等译人民邮电出版社2006年3月3、C++.Primer.Plus.第三版.中文版StanleyB.Lippman等著潘爱民张丽译中国电力出版社2002年5月4

3、、C++入门经典第三版[美]IvorHorton著李予敏译清华大学出版社2006年1月5、C++参考大全第四版[美]HerbertSchidt著周志荣朱德芳于秀山等译电子工业出版社2003年9月6、21天学通第四版C++[美]JesseLiberty著康博创作室译人民邮电出版社2002年3月类中的各种成员const,static,[],*p,conststatic,对象成员,常量对象,mutable1.类中的静态成员变量static:被类中的所有对象所共享,静态成员属于整个类不属于某个对象。静态成员变量和全局变量差不多,只是他的作用范围为定义他的类及类的对象所知。1.1.当在一个类中声明静

4、态成员变量时并没有定义该变量即没有为他分配存储空间,所以必须在类外对静态成员变量提供全局定义,注意必须在类外,这样就可以为变量分配内存,定义的方式为使用作用域解析符,比如有类hyong类中有静态整型成员a,那么在类外定义该变量的方式为inthyong::a=9;注意必须要有在类中声明的类型,如果定义时没有初始化则自动初始化为0。1.2.静态成员变量如果是类中的公有成员则可以在程序中使用语句hyong::a来访问该变量,当然也可以通过对象名来访问该变量,如果变量是私有或者保护的,则只能用静态的成员函数来访问该变量。1.3不能用初始化列表来初始化静态成员变量。2.静态成员函数static,静态

5、成员函数没有this指针,静态成员函数只能引用这个类的其他类静态成员,当然全局函数和数据可以访问,因为类的函数都要用this指针来访问成员,因为静态成员函数没有this指针,所以不能访问除静态成员之外的成员。同一个函数不可以有静态和非静态两种版本,静态成员函数不可以是虚函数,静态成员函数不能是const和volatile。静态成员函数使用是有限的,通常使用静态成员函数来访问类中的私有静态成员变量。在类外定义的形式为inthyong::g(){}注意,这里没有static说明符。3.const成员变量参看第四节初始化列表。4.const成员函数,形式为intf()const{}注意const

6、在括号后,如果把const放在int前就成为一个反回constint类型的函数了,把函数声明为const后就使得this可以当做一个const指针,从而使得函数不能修改调用它的对象也就是说不能改变任何一个类的成员变量的值。如果想让const函数能修改某一部分成员,可以把该成员声明为mutable类型,例如mutableinta。在类外定义的形式为inthyong::f()const{}5.conststatic常量静态数据成员,这种类型的成员变量可以直接在类的定义中直接初始化,这也是唯一一种可以在类中初始化的类型,如果没有在类中初始化,在类外的初始化方式为constinthyong::a=

7、2;注意const和类型都必须有。6.const常量对象:即把对象声明为常量,即consthyongm,常量对象不能调用可能改变对象的值的函数,因此常量对象只能调用类中的const常量函数,因为不是const的函数都有可能改变对象的值。6.2.常量对象可以调用类中的公有成员,如m.a就是正确的如果a是公有的。6.4.不能对常量对象的公有成员重新赋值,如m.a=3就是错误的。但可以对类中的公有静态成员变量重新赋值,因为静态

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。