自定义数组实现
要求 可以对内置数据类型以及自定义数据类型的数据进行存储 将数组中的数据存储到堆区 构造函数中可以传入数组的容量 提供对应的拷贝构造函数以及 operator= 防止浅拷贝问题 提供尾插法和尾删法对数组中的数据进行增加和删除 可以通过下标的方式访问数组中的元素 可以获取数组中当前元素个数和数组的容量 实现 template<class T> class MyArray{ public: MyArray(int capacity){ this->m_capacity = capacity; this->m_size = 0; this->m_addr = new T[this->m_capacity]; } MyArray(const MyArray& arr){ if(arr.m_addr == NULL){ return; } // 深拷贝 this->m_capacity = arr.m_capacity; this->m_size = arr.m_size; this->m_addr = new T[this->m_capacity]; for(int i = 0; i < m_size; ++i){ // T 类型是可拷贝的,= 运算符也是深拷贝 this->m_addr[i] = arr.m_addr[i]; } } MyArray& operator=(const MyArray& arr){ if(this == &arr){ return *this; } if(this->m_addr !...