21xrx.com
2024-12-27 16:20:41 Friday
登录
文章检索 我的文章 写文章
怎样在 C++ 中调整大小?
2023-07-07 04:17:49 深夜i     --     --
C++ 调整大小 vector 数组 指针

在 C++ 中,可以使用动态内存分配来调整数组或指针的大小。下面是使用 new 和 delete 运算符进行动态内存分配和释放的示例代码:

// 动态分配一个大小为 5 的 int 数组

int* myArray = new int[5];

// 初始化数组

for (int i = 0; i < 5; i++) {

  myArray[i] = i;

}

// 调整数组大小为 10

int* myNewArray = new int[10];

for (int i = 0; i < 5; i++) {

  myNewArray[i] = myArray[i];

}

// 释放内存

delete [] myArray;

myArray = myNewArray;

在上面的代码中,我们首先使用 new 运算符动态分配一个大小为 5 的 int 数组,并初始化它。然后,我们使用 new 运算符再次动态分配一个大小为 10 的 int 数组,并将原来数组中的元素复制到新数组中。最后,我们使用 delete 运算符释放原来的内存,并将指针 myArray 指向新数组。

当我们需要动态分配一个大小未知的数组时,可以使用 vector 类型。vector 类型是 C++ 标准库中的一个容器类型,它包含了自动扩展大小的动态数组。下面是使用 vector 类型进行动态数组分配的示例代码:

// 使用 vector 动态分配一个 int 数组

vector myVector;

// 添加元素

for (int i = 0; i < 5; i++) {

  myVector.push_back(i);

}

// 调整数组大小为 10

myVector.resize(10);

在上面的代码中,我们首先创建了一个空的 vector 类型,然后使用 push_back() 方法添加 5 个元素。接着,我们使用 resize() 方法将 vector 的大小调整为 10。这样,原来 vector 中的元素会保留,多余的元素会被初始化为默认值。

总之,在 C++ 中调整数组或指针的大小,可以使用动态内存分配和释放。通过 new 和 delete 运算符,我们可以手动分配和释放内存;通过 vector 类型,我们可以方便地实现动态数组分配。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复