list::resize()是C++ STL中的内置函数,用于调整列表容器的大小。它以数字n作为参数,并调整列表容器的大小以恰好包含n个元素。
- 如果列表中已有n个以上的元素,则该函数将从列表中删除除前n个元素之外的所有元素。
- 如果列表包含少于n个元素,则该函数会将元素的差值及其默认值添加到列表中。
- 该函数还接受参数val,如果指定了此参数并且列表容器中的元素数小于n,则该函数会将元素的值分配给val将其添加到列表中。
用法:
list_name.resize(int n, value_type val)
参数:此函数接受两个参数,如下所述。
- n:此参数指定需要调整列表大小的元素数量。
- val:这是一个可选参数,如果指定了该参数并且列表中包含的元素少于n个,则该函数会将元素的值分配给val来向列表中添加元素。
返回值:此函数不返回任何值。
以下示例程序旨在说明C++ STL中的list::resize()函数:
// CPP program to illustrate the
// list::resize() function
#include <bits/stdc++.h>
using namespace std;
int main()
{
// Creating a list
list<int> demoList;
// Adding elements to the list
demoList.push_back(10);
demoList.push_back(20);
demoList.push_back(30);
demoList.push_back(40);
// Initial list:
cout << "Initial List: ";
for (auto itr = demoList.begin(); itr != demoList.end(); itr++)
cout << *itr << " ";
// Resize list to contain less elements
demoList.resize(2);
cout << "\n\nList after first resize: ";
for (auto itr = demoList.begin(); itr != demoList.end(); itr++)
cout << *itr << " ";
// Resize list to contain more elements
demoList.resize(4);
cout << "\n\nList after second resize: ";
for (auto itr = demoList.begin(); itr != demoList.end(); itr++)
cout << *itr << " ";
// resize list to contain more elements
// with a specified value
demoList.resize(5, 50);
cout << "\n\nList after third resize: ";
for (auto itr = demoList.begin(); itr != demoList.end(); itr++)
cout << *itr << " ";
return 0;
}
输出:
Initial List: 10 20 30 40 List after first resize: 10 20 List after second resize: 10 20 0 0 List after third resize: 10 20 0 0 50
相关用法
- C++ deque resize()用法及代码示例
- C++ forward_list resize()用法及代码示例
- C++ valarray resize()用法及代码示例
- C++ std::string::resize()用法及代码示例
- C++ vector::resize()用法及代码示例
- C++ list end()用法及代码示例
- C++ list empty()用法及代码示例
- C++ list size()用法及代码示例
- C++ list back()用法及代码示例
- C++ list erase()用法及代码示例
- C++ list front()用法及代码示例
- C++ list assign()用法及代码示例
- C++ list push_back()用法及代码示例
- C++ list reverse用法及代码示例
- C++ list push_front()用法及代码示例
注:本文由纯净天空筛选整理自barykrg大神的英文原创作品 list resize() function in C++ STL。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。