急求下面C++编程题的答案,望大神解答,拜谢

用类模板定义一个动态数组类vector,定义为:templateclassvector{};具有与SLT的vector类模板相似的功能,是一个能够存放任意类型的动态数组,... 用类模板定义一个动态数组类vector,定义为: template class vector { }; 具有与SLT的vector类模板相似的功能,是一个能够存放任意类型的动态数组,能够增加和压缩数据。功能要求: 1、构造函数、复制构造函数、移动复制构造函数、析构函数: vector c 创建一个空的vector。 vector c1(c2) 复制一个vector,或移动复制一个vector。 vector c(n) 创建一个vector,含有n个数据,数据均已缺省构造产生。 vector c(n, elem) 创建一个含有n个elem拷贝的vector。 ~ vector () 销毁所有数据,释放内存。 2、功能函数:函数 表述 c.at(idx) 传回索引idx所指的数据,如果idx越界,抛出out_of_range。 c.clear() 移除容器中所有数据。 c.empty() 判断容器是否为空。 c.erase(pos) 删除pos位置的数据 。 c.insert(pos,elem) 在pos位置插入一个elem拷贝。 c.max_size() 返回容器中最大数据的数量。 c.pop_back() 删除最后一个数据。 c.push_back(elem) 在尾部加入一个数据。 c.resize(num) 重新指定队列的长度。 c.size() 返回容器中实际数据的个数。 函数表述 c.at(idx)传回索引idx所指的数据,如果idx越界,抛出out_of_range。 c.clear()移除容器中所有数据。 c.empty()判断容器是否为空。 c.erase(pos) 删除pos位置的数据 。 c.insert(pos,elem) 在pos位置插入一个elem拷贝。 c.max_size()返回容器中最大数据的数量。 c.pop_back()删除最后一个数据。 c.push_back(elem)在尾部加入一个数据。 c.resize(num)重新指定队列的长度。 c.size()返回容器中实际数据的个数。 3、运算符重载函数:函数 描述 operator[int idx] 下标运算符重载,返回容器中指定idx位置元素的一个引用。 operator= 赋值运算符,移动赋值运算符重载 operator== 相等关系运算符重载,两个对象完全相等返回true 函数描述 operator[int idx]下标运算符重载,返回容器中指定idx位置元素的一个引用。 operator=赋值运算符,移动赋值运算符重载 operator==相等关系运算符重载,两个对象完全相等返回true 4、异常处理(1)对所有内存申请进行判断,若申请失败,则抛出异常。(2)对所有数组下标和位置访问进行判断,若越界,则抛出异常。(3)main函数中对测试代码进行监控,对以上这两种异常情况分别进行不同的处理。 展开
 我来答
失拟走3
2015-06-02 · TA获得超过135个赞
知道答主
回答量:32
采纳率:100%
帮助的人:17.9万
展开全部
这么长的一串,看都懒得看,也只有我这种打酱油的会回答你了。。
追问
作业,没办法,实在不会
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式