欢迎来到天天文库
浏览记录
ID:38699054
大小:170.50 KB
页数:5页
时间:2019-06-17
《实验十五动态内存分配与深复制》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验十五动态内存分配与深复制 一、实验目的1.理解运行时内存分配的概念,掌握自由存储区内存动态分配的方法。2.理解内部包含为指针动态分配内存的类对象复制时的浅复制和深复制的概念,会编写深复制构造函数和赋值复制运算符。二、实验内容1.编程:仿照标准字符串类string,采用动态字符数组来改造主教材5.6.3节中的自定义字符串类,要求可自动适应不同的串长度。【提示】新的自定义字符串类mysring如下:classmystring{char*str;intmaxsize;intlast;public:mystring();mystring(char*s);mystring(mystri
2、ng&st);~mystring();voidshow();char&operator[](inti);mystring&operator=(mystring&);mystring&operator=(char*);//这里重载的=是把C风格字符串赋给mystringmystringoperator+(mystring&);mystringoperator+=(mystring&);booloperator<(mystring&);booloperator==(mystring&);}; 请读者完成各函数的定义,并测试。【分析】本题的难点是判断串长是否超出串的最大允许长度,以及怎
3、样重新分配字符数组,并保留原来的字符数组。2.为使用本实验第1题所定义的自定义字符串类的学生类和使用动态C风格字符串的学生类编写复制构造函数。对比两者的差别,主要是复制构造函数student(student&std)和复制构造函数dstudent(dstudent&std)的实现。请按提示要求完成两复制构造函数,其余代码已给出。
此文档下载收益归作者所有