English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
C ++ A função resize() do deque altera o tamanho do contêiner de dupla extremidade para o tamanho especificado nos parâmetros, ou seja, altera o tamanho da fila dupla.
Se n for maior que o tamanho do contêiner, o tamanho do contêiner pode ser expandido para n elementos, inserindo novos elementos no espaço de expansão.
Se n for menor que o tamanho do contêiner, o contêiner será reduzido para n elementos, removendo todos os elementos além dos n primeiros.
Ondeonde n é o novo tamanho do contêiner fornecido pelos parâmetros.
void resize(int n, value_type val);
n:Este é o novo tamanho do contêiner.
val:O novo valor a ser adicionado no espaço de expansão.
Ele não retorna nenhum valor.
Vamos ver um exemplo simples, quando n é menor que o tamanho do contêiner.
#include <iostream> #include<deque> using namespace std; int main() { deque<int> d={100,200,300,400,500}; d.resize(3); for(int i=0;i<d.size();i++) { cout<<d[i]; cout<<" "; } return 0; }
Saída:
100 200 300
Neste exemplo, a função resize() ajusta o tamanho do contêiner para3Portanto, será removido o elemento3de todos os elementos além do elemento.
Vamos ver um exemplo simples, quando n é maior que o tamanho do contêiner.
#include <iostream> #include<deque> using namespace std; int main() { deque<string> d={"C","C"}++,"java",".Net","python"}; d.resize(7,"rust"); for(int i=0;i<d.size();i++) { cout<<d[i]; cout<<" "; } return 0; }
Saída:
C C++ java .Net python rust rust
Neste exemplo, a função resize() ajusta o tamanho do contêiner para7Portanto, o espaço adicional será inserido o novo elemento “rust”.