Adicionando Elementos
Parte da seção Lógica & Fluxo do Journey de C++ da Coddy — lição 11 de 56.
Agora que você sabe como criar vetores, vamos aprender como adicionar elementos a eles depois de terem sido criados. O método push_back() é sua ferramenta principal para aumentar um vetor, adicionando novos elementos ao seu final.
O método push_back() recebe um único argumento - o valor que você deseja adicionar - e o anexa ao final do vetor:
std::vector<int> numbers;
numbers.push_back(10);
numbers.push_back(20);
numbers.push_back(30);Neste exemplo, começamos com um vetor vazio e usamos push_back() para adicionar três inteiros. Após essas operações, nosso vetor contém os elementos [10, 20, 30] nessa ordem.
A beleza do push_back() é que ele lida com todo o gerenciamento de memória automaticamente. Quando você adiciona elementos e o vector fica sem espaço, ele aloca automaticamente mais memória e copia os elementos existentes para o novo local. Isso torna os vectors incrivelmente convenientes para construir coleções de dados quando você não sabe o tamanho final antecipadamente.
Desafio
FácilCrie um programa que demonstre a adição de elementos a um vetor usando o método push_back(). Você começará com um vetor vazio e o construirá dinamicamente adicionando números em uma sequência específica.
As seguintes entradas serão fornecidas:
- Um número inteiro
nrepresentando quantos números devem ser adicionados ao vetor - Em seguida,
nnúmeros inteiros que devem ser adicionados ao vetor um por um
Seu programa deve:
- Criar um
std::vector<int>vazio chamadonumbers - Usar um loop para ler cada um dos
nnúmeros de entrada - Para cada número, usar
push_back()para adicioná-lo ao final do vetor - Após adicionar cada número, imprimir o tamanho atual do vetor e o número que acabou de ser adicionado
- Por fim, imprimir todos os elementos do vetor em uma única linha, separados por espaços
Use o seguinte formato de saída exato:
Added [number], size is now [current size]
Added [number], size is now [current size]
...
Final vector: [num1] [num2] [num3] ...Use o método .size() para obter o número atual de elementos no vetor após cada adição. Para a saída final, use o operador de colchetes [] para acessar cada elemento pelo índice.
Folha de consulta
Use push_back() para adicionar elementos ao final de um vetor:
std::vector<int> numbers;
numbers.push_back(10);
numbers.push_back(20);
numbers.push_back(30);O método push_back() gerencia automaticamente a memória, expandindo o vetor conforme necessário ao adicionar elementos.
Experimente você mesmo
#include <iostream>
#include <vector>
using namespace std;
int main() {
// Lê o número de elementos a adicionar
int n;
cin >> n;
// Cria um vetor vazio
vector<int> numbers;
// TODO: Escreva seu código aqui
// Lê n números e adiciona-os ao vetor usando push_back()
// Imprime a saída necessária após cada adição
// Imprime o vetor final
cout << "Final vector: ";
// TODO: Imprime todos os elementos separados por espaços
return 0;
}Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Lógica & Fluxo
1Ponteiros e Memória
O que é um Ponteiro?Operador de EndereçoOperador de DesreferenciaçãoPonteiros NulosPonteiros e ArraysMemória Dinâmica com 'new'Liberando Memória com 'delete'Recapitulação - Prática com Ponteiros2Vetores (Arrays Dinâmicos)
Introdução ao std::vectorCriando um VetorAdicionando ElementosAcessando ElementosTamanho do VetorIterando com um Loop ForLoop For Baseado em IntervaloRemovendo ElementosRecapitulação - Operações com Vetores3Projeto: Ferramenta de Lista de Tarefas
Visão Geral do ProjetoAdicionando uma Tarefa