Carregando
0x40Lição 5 de 9

Trabalhe com strings e vectors

Use os contêineres padrão para gerenciar texto e sequências que crescem com segurança.

16 min Questionário com 5 perguntas 1 exercício de código
Ao final desta lição, você saberá
  • Usar std::string, std::vector e laços for baseados em faixa.

std::vector<T> guarda uma sequência de valores que pode crescer ou diminuir, e std::string guarda texto. Inclua <vector> e <string> para esses tipos. Um laço baseado em faixa visita cada elemento diretamente. Use const auto& quando só precisar inspecionar elementos possivelmente grandes sem copiá-los. A indexação começa em zero; at() verifica os limites e lança uma exceção se o índice for inválido.

main.cpp · C++20
1#include <iostream>
2#include <vector>
3
4int main() {
5    const std::vector<int> scores{8, 5, 9};
6    for (const auto& score : scores) {
7        std::cout << score << "\n";
8    }
9}
Saída
8
5
9

auto pede ao compilador para inferir um tipo a partir do inicializador. Aqui, const auto& significa uma referência só de leitura a cada elemento do vector. Os contêineres padrão gerenciam o próprio armazenamento e o liberam automaticamente quando saem de escopo.

Principais conclusões

  • Prefira os contêineres padrão a arrays gerenciados à mão para as sequências do dia a dia.

  • Use laços baseados em faixa para expressar o processamento elemento a elemento.

  • Os contêineres liberam os seus recursos automaticamente.

Quiz da aula

5 perguntas · aprovação com 4 acertos · até 50 XP

Ao passar, você conclui a aula e mantém sua sequência. As perguntas erradas voltarão em sessões de revisão.

Pratique: escreva código em C++

Escreva C++20 no editor e execute com entradas de exemplo. O GCC 14 compila o código pelo Compiler Explorer, um serviço público gratuito; seu código-fonte e a entrada de teste são enviados para lá.

Exercício 1

Some um vector de números

+25 XP

Leia uma quantidade seguida dessa quantidade de inteiros. Guarde-os num vector e imprima Total: N.

  • Três valores
  • Vector vazio
main.c
Carregando editor…

Seu código é compilado como C++20 com gcc 14 (-Wall -Wextra) e executado no Compiler Explorer (godbolt.org), um serviço público gratuito.

Dúvidas sobre esta lição

Travou em algum ponto? Pergunte. Descobriu algo? Compartilhe. Explicar também é uma ótima forma de aprender.

Carregando publicações…