9.14号作业

这篇具有很好参考价值的文章主要介绍了9.14号作业。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

仿照vector手动实现自己的myVector,最主要实现二倍扩容功能

有些功能,不会

#include <iostream>

using namespace std;
//创建vector类
class Vector
{
private:
    int *data;
    int size;
    int capacity;
public:
    //无参构造
    Vector(){}
    //拷贝构造
    Vector(const Vector &other):size(0),capacity(0)
    {
        data=new int[other.capacity];
        for(int i=0;i<size;i++)
        {
            data[i]=other.data[i];
        }
    }
    ~Vector()
    {
        delete []data;
    }
    //返回第一个位置的元素
    int front()
    {
        return data[0];
    }
    //返回最后一个位置的元素
    int back()
    {
        return data[size-1];
    }
    //返回 最末位置的迭代器
    int *end()
    {
        return &data[size];
    }

    //返回第一个位置的迭代器
    int *begin()
    {
        return &data[0];
    }

    //添加元素
    void push_back(int e)
    {
        if(size==capacity)
        {
            cout<<"已经到容器最大值"<<endl;
            if(capacity==0)
            {capacity=1;}
        }
        else
        {
            capacity=capacity*2;
        }
        int *newdata=new  int[capacity];
        for(int i=0;i<size;i++)
        {
            newdata[i]=data[i];
        }
        delete[] data;
        data=newdata;

        data[size]=e;
        size++;
    }
    //删除末尾元素
    void pop_back()
    {
        size--;
    }
    //判空
    bool empty()
    {
        return size==0;
    }
    //获取元素数量
    int get_size()
    {
        return size;
    }
    //容器大小
    int get_capacity()
    {
        return capacity;
    }
    //遍历
    void show()
    {
        int i = 0;
        for(i=0;i < size;i++)
        {
            cout << data[i] << "\t";
        }
           cout << endl;
    }

};
int main()
{
    Vector V1;
    V1.push_back(4);
    V1.push_back(5);
    V1.push_back(9);
    V1.push_back(3);
    V1.push_back(6);
    V1.push_back(2);
    V1.show();
    cout<<"最大容量"<<V1.get_capacity()<<endl;
      cout<<"拥有元素"<<V1.get_size()<<endl;
      V1.pop_back();
      V1.show();
    return 0;
}

2.思维导图

9.14号作业,c++文章来源地址https://www.toymoban.com/news/detail-733163.html

到了这里,关于9.14号作业的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • C语言假期作业 DAY 14

    A: 比较两个字符的大小 B: 计算s所指字符串占用内存字节的个数 C: 计算s所指字符串的长度 D: 将s所指字符串复制到字符串t中 答案解析 正确答案: B 循环在 *t 为 0 时停止,同时 t++ , t 最后会停在字符串结束的 \\\'\\0\\\' 之后的一个位置, t 作为尾部指针减去头部指针就是整个字符

    2024年02月14日
    浏览(12)
  • 【探索 Kubernetes|作业管理篇 系列 14】StatefulSet 存储状态

    【探索 Kubernetes|作业管理篇 系列 14】StatefulSet 存储状态

    大家好,我是秋意零。 在上一篇中,我们讲解了 StatefulSet 的拓扑状态;我们发现,它的拓扑状态,就是顺序启动/删除、Pod 名称+编号命名、将 Pod 名称设为 Hostname 名称、通过 Service 无头服务的 DNS 记录访问。 今天,就来看看 StatefulSet 的存储状态。 最近搞了一个扣扣群,旨在

    2024年02月11日
    浏览(13)
  • flink1.14.5使用CDH6.3.2的yarn提交作业

    flink1.14.5使用CDH6.3.2的yarn提交作业

    使用CDH6.3.2安装了hadoop集群,但是CDH不支持flink的安装,网上有CDH集成flink的文章,大都比较麻烦;但其实我们只需要把flink的作业提交到yarn集群即可,接下来以CDH yarn为基础,flink on yarn模式的配置步骤。 一、部署flink 1、下载解压 官方下载地址:Downloads | Apache Flink 注意:CD

    2024年01月16日
    浏览(13)
  • 山东大学计算机科学与技术学院程序设计思维与实践作业 week14-动态规划(4)

    山东大学计算机科学与技术学院程序设计思维与实践作业 week14-动态规划(4)

    山东大学计算机科学与技术学院程序设计思维与实践作业 山大程序设计思维与实践作业 sdu程序设计思维与实践 山东大学程序设计思维实践作业H14 山大程序设计思维实践作业H14 山东大学程序设计思维与实践 week14-动态规划(4) 相关资料:GitHub 题目描述 给出一棵树,求树的

    2024年02月09日
    浏览(47)
  • MySQL 第七天作业 nosql作业

    MySQL 第七天作业 nosql作业

    1、 string类型数据的命令操作: (1) 设置键值: (2) 读取键值: (3) 数值类型自增1: (4) 数值类型自减1: (5) 查看值的长度: 2、 list类型数据的命令操作: (1)对列表city插入元素:Shanghai Suzhou Hangzhou (2)将列表city里的头部的元素移除 (3)将name列表的尾部元

    2024年02月17日
    浏览(7)
  • 【个人作业】第二周用户调研作业3

    做过头通常指的是某种行为或决策过于极端或过度,导致不利的后果。在这种情况下,数据驱动的决策可能会导致一些问题。 (一)、在Google的例子中,过度关注微小的设计细节和数据分析可能会导致以下几个问题: 1、创意和创新受限:过度依赖数据可能会抑制创造力和创

    2024年03月11日
    浏览(12)
  • 电子作业票如何实现特殊作业审批规范管理?

    电子作业票如何实现特殊作业审批规范管理?

    电子作业票系统是针对传统作业许可管理存在的问题和缺陷,结合物联网、云计算和大数据等新一代信息技术,以企业作业安全为主线,现场作业与安全监控相结合,通过识别、分析与控制非常规作业过程中的危险及隐患,智能化调度和协调相关区域作业,直观显示属地作业

    2024年02月13日
    浏览(10)
  • Spring Batch 作业对象-作业参数设置与获取

    Spring Batch 作业对象-作业参数设置与获取

    目录 引言 JobParameters 作业参数设置 作业参数获取 方案1:使用ChunkContext类   方案2:使用@Value 延时获取 转视频版 书接上篇Spring Batch批处理-作业Job简介,上篇带小伙伴们了解色作业Job对象,那这篇就看一下作业参数是啥一回事,同时要怎么设置参数并获取参数的。 前面提到

    2023年04月15日
    浏览(13)
  • 【百套源码】HTML5期末大作业 - 各类网页作业源码合集

    【百套源码】HTML5期末大作业 - 各类网页作业源码合集

    作者:xcLeigh 文章地址:https://blog.csdn.net/weixin_43151418/article/details/131242976 【百套源码】HTML5期末大作业 - 各类网页作业源码合集 HTML作业源码,源码下载,内含博主整理的附带源码的资源合集,包括个人介绍相关源码,企业官网相关源码(商城,服装,农业,公司官网,食品,

    2024年02月09日
    浏览(11)
  • 学校头歌作业1_2四则运算(头歌作业[Python])

    在CSDN上补充前几期的内容 第1关:整数四则运算 第2关:浮点类型四则运算 第3关:用户输入数值和符号 第4关:随机出题的四则运算

    2024年02月08日
    浏览(70)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包