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