动态数组与链表的实现与应用
1. 动态数组赋值运算符的创建
有时候,能够轻松复制数组是很方便的。通过为 CIntArray 类提供赋值运算符,我们可以使用简单的语句来复制数组,例如:
CIntArray a1, a2; // 创建两个空的动态数组
// ...
// 向数组 a1 填充数据
// ...
a2 = a1; // 假设 a1 已经包含元素
在这种情况下,数组 a2 是数组 a1 中所有元素的目标容器。赋值运算符必须完成以下几件事:
- 清除目标数组中的任何数据
- 为目标数组分配足够的存储空间,以容纳所有源元素
- 将元素从源数组复制到目标数组
赋值运算符函数 CIntArray::operator=() 提供了这些功能,使用标准的赋值运算符语法,如下所示:
CIntArray& operator=(const CIntArray& a);
该函数首先使用 CIntArray::Clear() 方法清除目标数组中可能存在的任何元素。然后,使用以下语句完成复制数组的分配:
mypArray = new int[a.mySize];
数组的大小存储在
动态数组与链表的实现、对比及应用
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



