C++写一个Array

C++写一个Array

写一个Array:

#include <iostream>
using namespace std;

template<class T>
class array
{
    private:
        int capacity;
        int size = 0;
        T* head;
    public:
        array(int);
        void push(T);
        int get_len();
        T* get_head();
        T* get_idx(int);
};

template<class T>
array<T>::array(int capacity = 100000)
{
    this->capacity = capacity;
    head = new T[this->capacity];
}

template<class T>
int array<T>::get_len()
{
    return this->size;
}

template<class T>
T* array<T>::get_head()
{
    return this->head;
}

template<class T>
T* array<T>::get_idx(int index)
{
    return this->head + index;
}

template<class T>
void array<T>::push(T data)
{
    *(head + size) = data;
    size += 1;
}

int main()
{
    array<int> x_array(100);
    x_array.push(1);
    x_array.push(20);
    x_array.push(3);

    int *temp = x_array.get_idx(1);

    cout << x_array.get_len() << endl;
    cout << *(temp + 1);

    system("pause");
    return 0;
}

上一篇:深入浅出Docker 1-6章 学习笔记


下一篇:【题解】CF1530G What a Reversal