类和动态内存分配ppt课件.ppt

类和动态内存分配ppt课件.ppt

ID:59008489

大小:101.50 KB

页数:61页

时间:2020-09-26

类和动态内存分配ppt课件.ppt_第1页
类和动态内存分配ppt课件.ppt_第2页
类和动态内存分配ppt课件.ppt_第3页
类和动态内存分配ppt课件.ppt_第4页
类和动态内存分配ppt课件.ppt_第5页
资源描述:

《类和动态内存分配ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第7章类和动态内存分配提要本章介绍对类使用动态分配技术,以及由此引起的问题的处理。动态内存的使用将影响构造函数,析构函数的设计和操作符的重载7.1动态内存和类一个使用动态内存的例子classStringBad{private:char*str;//pointertostringintlen;//lengthofstringstaticintnum_strings;//numberofobjectspublic:StringBad(constchar*s);//constructorStringBa

2、d();//defaultconstructor~StringBad();//destructor//friendfunctionfriendstd::ostream&operator<<(std::ostream&os,constStringBad&st);};以下是其实现(stringbad.cpp)静态类成员的初始化intStringBad::num_strings=0;///注意:静态类成员位于静态存储区,并不是类对象的组成部分;在类声明中声明,不可初始化(静态const整型或枚举除外除外

3、);在类方法实现文件中初始化。使用类型名和定义域限制操作符,不用关键字static。然后是构造函数StringBad::StringBad(constchar*s){len=std::strlen(s);//setsizestr=newchar[len+1];//allotstoragestd::strcpy(str,s);//initializepointernum_strings++;//setobjectcountcout<

4、tcreated";//ForYourInformation}注意:字符串并没有保存在对象中,而是在单独的堆内存中。对象中存储字符串的地址。析构函数StringBad::~StringBad()//necessarydestructor{cout<<"""<

5、的。在构造函数中用new分配内存,必须在析构函数中用delete释放内存文件vegnews.cpp是使用上述类的主程序。其中定义了两个函数:一个传引用作参数,一个传值作参数voidcallme1(StringBad&rsb){cout<<"Stringpassedbyreference:";cout<<"""<

6、;}1:"CeleryStalksatMidnight"objectcreated2:"LettucePrey"objectcreated3:"SpinachLeavesBowlforDollars"objectcreatedheadline1:CeleryStalksatMidnightheadline2:LettucePreysports:SpinachLeavesBowlforDollarsStringpassedbyreference:"CeleryStalksatMidnight"hea

7、dline1:CeleryStalksatMidnightStringpassedbyvalue:"LettucePrey""LettucePrey"objectdeleted,2leftheadline2:葺葺葺葺葺葺葺葺葺葺葺葺葺葺葺葺Initializeoneobjecttoanother:sailor:SpinachLeavesBowlforDollarsAssignoneobjecttoanother:3:"C++"defaultobjectcreatedknot:CeleryStalk

8、satMidnightEndofmain()"CeleryStalksatMidnight"objectdeleted,2left"SpinachLeavesBowlforDollars"objectdeleted,1left"葺葺葺葺葺葺葺葺葺葺葺葺葺葺葺葺葺葺葺葺?objectdeleted,0left未处理的异常:System.NullReferenceException:未将对象引用设置到对象的实例。atdelete[](Void*)atStringBad.__dtor(S

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

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

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