当前位置:首页 C++ > 正文

c++vector模拟实现之构造函数初始化

作者:野牛程序员:2024-01-03 14:34:28 C++阅读 2383

C++中,vector的构造函数有多种方式进行初始化。以下是一种模拟实现,展示了一个简单的构造函数初始化的例子:

#include <iostream>

template <typename T>
class MyVector {
private:
    T* array;       // 指向动态数组的指针
    size_t size;     // 数组的大小
    size_t capacity; // 数组的容量

public:
    // 默认构造函数
    MyVector() : array(nullptr), size(0), capacity(0) {}

    // 带参数的构造函数,初始化为指定大小并赋初值
    MyVector(size_t initialSize, const T& value) : size(initialSize), capacity(initialSize) {
        array = new T[capacity];
        for (size_t i = 0; i < size; ++i) {
            array[i] = value;
        }
    }

    // 析构函数
    ~MyVector() {
        delete[] array;
    }

    // 打印向量元素
    void print() {
        for (size_t i = 0; i < size; ++i) {
            std::cout << array[i] << " ";
        }
        std::cout << std::endl;
    }
};

int main() {
    // 使用带参数的构造函数初始化向量
    MyVector<int> myVec(5, 10);

    // 打印向量元素
    myVec.print();

    return 0;
}

在这个例子中,MyVector 类模拟了vector的简单实现。通过构造函数,可以初始化一个具有指定大小和初值的向量。这里使用了模板类,以支持不同类型的元素。

野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击