C++ List resize()函数
C++ List resize()函数用于改变列表容器的大小。
以下是条件
如果n小于当前容器大小,则列表容器会被减小到n个元素,删除所有超过n空间的元素。
如果n大于当前容器大小,则容器的大小会增加,可以在扩展的空间中插入更多元素。
语法
void resize(size_type n, value_type val )
参数
n :这是一个新的容器大小。
val :这是要插入到新构建空间中的值。
返回值
它不返回任何值。
示例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。
示例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插入到新构建的空间中。