第7讲string类型、对象的动态建立与释放、指针应用举例讲解.pptVIP

第7讲string类型、对象的动态建立与释放、指针应用举例讲解.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7讲string类型、对象的动态建立与释放、指针应用举例讲解

C++程序设计 第7讲 指针应用举例 一、C++处理字符串的方法—— 字符串类与字符串变量 C++标准库中声明了一个字符串类(string),用这个类可以定义字符串对象。因此除了用字符数组存放字符串外,也可以定义字符串类型(string)的变量来存放字符串。 (6)字符串数组 例 string类应用举例 #include string #include iostream using namespace std ; void trueFalse(int x) { cout (x? True: False) endl; } int main() { string S1=DEF, S2=123; char CP1[ ]=ABC; char CP2[ ]=DEF; cout S1 is S1 endl; cout S2 is S2 endl; coutlength of S2:S2.length()endl; cout CP1 is CP1 endl; cout CP2 is CP2 endl; cout S1=CP1 returned ; trueFalse(S1=CP1); cout CP2=S1 returned ; trueFalse(CP2=S1); S2+=S1; coutS2=S2+S1:S2endl; coutlength of S2:S2.length()endl; } 二、创建堆对象运算符: new和释放堆对象运算符delete new 类型名T(初值列表) new 类型名T[数组元素个数] //不能赋初值 功能:在程序执行期间,申请用于存放T类型对象的内存空间,并依初值列表赋以初值。 结果值:成功:T类型的指针,指向新分配的内存。失败:0(NULL) 例如: int *p; p=new int(10); //初始值是10 delete p; p=new int[10]; //具有10个元素的int型数组 delete [ ] p; // 删除数组要用delete [ ] 数组名 int *point= new int; int rint=*point; 例 动态创建对象举例 #includeiostream using namespace std; class Point { public: Point() { X=Y=0; coutDefault Constructor called.\n;} Point(int xx,int yy) { X=xx; Y=yy; cout Constructor called.\n; } ~Point() { coutDestructor called.\n; } int GetX() {return X;} int GetY() {return Y;} void Move(int x,int y) { X=x; Y=y; } private: int X,Y; }; int main() { coutStep One:endl; Point *Ptr1=new Point; delete Ptr1; coutStep Two:endl; Ptr1=new Point(1,2); delete Ptr1; return 0; } 例动态创建对象数组举例 #includeiostream using namespace std; class Point { //类的声明同前例,略 }; int main() { Point *Ptr=new Point[2]; //创建对象数组 Ptr[0].Move(5,10); //通过指针访问数组元素的成员 Ptr[1].Move(15,20); //通过指针访问数组元素的成员 coutDeleting...endl; delete[ ] Ptr; //删除整个对象数组 return 0; } 运行结果: Default Constructor called. Default Constructor called. Deleting... Destructor called. Destructor cal

文档评论(0)

000 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档