C++ List 中的 resize()函数

首页 / C++入门教程 / C++ List 中的 resize()函数

C++ List resize()函数更改列表集合的大小。

以下是条件:

如果n小于当前集合的大小,则列表集合将减少为n个元素,并删除所有扩展n空间的元素。

如果n大于当前集合的大小,则集合的大小会增加,并且可以在扩展的空间中插入更多元素。

无涯教程网

resize - 语法

void resize(size_type n, value_type val )

resize - 参数

n     - 这是一个新的集合尺寸。

val  - 它是一个要插入到新构建空间中的值。

resize - 返回值

它不返回任何值。

resize - 例子1

让我们看一个简单的示例,其中n小于当前集合的大小。

#include <iostream>
#include<list>
using namespace std;
int main()
{
  list<int> li={1,2,3,4,5};
  list<int>::iterator itr;
  std::cout << "Content of list li :" << std::endl;
  for(itr=li.begin();itr!=li.end();++itr)
  cout<<*itr<<",";
  li.resize(3);
  cout<<'\n';
  std::cout << "After resizing,Content of list li :" << std::endl;
  for(itr=li.begin();itr!=li.end();++itr)
   cout<<*itr<<",";
  return 0;
}

输出:

Content of list li :
1,2,3,4,5
Content of list li :
1,2,3

在此示例中,resize()函数将列表集合的大小减小2。因此,列表的最后两个元素已被删除,输出变为1,2,3。

resize - 例子2

让我们看一个简单的示例,其中n大于当前集合的大小。

#include <iostream>
#include<list>
using namespace std;
int main()
{
  list<int> li={10,20,30,40};
  list<int>::iterator itr;
  std::cout << "Content of list li :" << std::endl;
  for(itr=li.begin();itr!=li.end();++itr)
  cout<<*itr<<",";
  li.resize(7,50);
  cout<<'\n';
  std::cout << "After resizing,Content of list li :" << std::endl;
  for(itr=li.begin();itr!=li.end();++itr)
   cout<<*itr<<",";
    return 0;
}

输出:

Content of list li :
10,20,30,40
After resizing,Content of list li :
10,20,30,40,50,50,50

在此示例中,resize()函数将列表的大小增加3,并将新元素(即50)插入到新构建的空间中。

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

微服务架构核心20讲 -〔杨波〕

Java核心技术面试精讲 -〔杨晓峰〕

趣谈网络协议 -〔刘超〕

深入拆解Java虚拟机 -〔郑雨迪〕

程序员的数学基础课 -〔黄申〕

手把手带你写一个Web框架 -〔叶剑峰〕

人人都用得上的数字化思维课 -〔付晓岩〕

Vue 3 企业级项目实战课 -〔杨文坚〕

结构思考力 · 透过结构看表达 -〔李忠秋〕

好记忆不如烂笔头。留下您的足迹吧 :)