类和对象学习.ppt

类和对象学习.ppt

ID:56531207

大小:302.50 KB

页数:34页

时间:2020-06-27

类和对象学习.ppt_第1页
类和对象学习.ppt_第2页
类和对象学习.ppt_第3页
类和对象学习.ppt_第4页
类和对象学习.ppt_第5页
资源描述:

《类和对象学习.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、类的其他特性.数据的共享(静态成员和友元).共享数据的保护(常成员)this指针主要内容静态数据静态数据成员定义与使用:在类定义中,用关键字static修饰的数据成员为静态数据成员。该类所有对象共享由系统为静态成员分配的一个存储空间,而这个存储空间是在编译时分配的,在定义对象时不再为静态成员分配空间。静态数据是该类所有对象所共有的,可提供同一类的所有对象之间信息交换的捷径。静态数据成员属于整个类,使用时可用以下格式:类名::静态数据成员名引用性声明:在类中用关键字static对静态成员进行的声明。定义性说明

2、:使用类名限定对静态成员进行定义性说明,这时可以对其进行初始化。静态数据成员:static修饰的成员数据staticinta,b;访问静态成员:类名::静态成员标识符clock::a静态成员不属于某个对象,它是为某个类的所有对象所共有的。即静态成员是属于类的。可提供同一类的所有对象之间信息交换的捷径。访问类名::静态数据成员名静态成员(staticclassmember)classaccount{public:account(doubleamount,conststring&owner);stringown

3、er(){returnowner;}private:staticdoubleRate;doubleamount;stringowner;};#includeclassCopy5{public:Copy5(intv){val=v;count++;}Copy5(constCopy5&cp){val=cp.val;count++;}voidprintcount(){cout<

4、员数据的说明与使用。intCopy5::count=0;//notnecessaryasdefaultis0!!!定义性声明并初始化voidmain(){Copy5c1(100);Copy5c2=c1;c1.printcount();}问题:为什么输出是2?#includeclassCtest{private:staticintcount;//注意私有public:Ctest(){++count;cout<<"对象数量="<

5、;cout<<"对象数量="<

6、员函数名的类型说明符前面加上关键字static即可。函数体的实现与一般成员函数相同,在类内或在类外实现都可以。静态成员函数引用的一般格式为:类名::静态成员函数名(参数表)对象名.静态成员函数名(参数表)例2静态成员函数的说明与使用。#includeclassCopy6{public:Copy6(intv){val=v;count++;}Copy6(constCopy6&cp){val=cp.val;count++;}staticvoidprintcount(){cout<

7、t<

8、态成员。如果要引用非静态成员时,可以通过对象来引用。具体就是先通过参数传递方式得到对象名,然后通过对象名访问非静态成员。2友元友元提供了不同类或对象的成员函数之间、类的成员函数与一般函数之间进行数据共享的机制。例4用友元函数求圆柱体的体积。//column.h#include#includeclasscolumn//类的定义{private://私有成员数据floatx

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

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

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