Vetor em C++ – aprenda em 5 minutos

vetor em c++

Um vetor em C++ é simplesmente um container, ou uma sequência, de elementos de um determinado tipo: um monte de nomes, uma sequência de números etc, que aumenta e diminui de tamanho automaticamente conforme você lhe adicione ou remova elementos. É somente isso, sem mistério.

O conceito é bastante simples, não é? Como você pode usar um vetor em C++, então?

representação de um vetor em C++
Representação de um vetor em C++

Como usar vetor em C++

Para usar um vetor em C++ o esquema é bastante simples, e eu vou resumí-lo em 2 passos muito simples:

  1. Adicione a linha #include <vector> no início do seu programa
  2. Use std::vector<tipo> seguido do nome da variável de tipo vetor que você quiser criar (substitua tipo por int, double, string etc.)

É só isso! Simples demais, não? Vejamos um exemplo de como usá-los na prática.


Exemplo 1 – uso de vetor em C++

// Exemplo 1 - usando vetor em C++
// Vetor de inteiros imprimido na saida do programa
#include <iostream>
#include <vector>

int main()
{
    std::vector<int> contagem{1, 2, 3, 4, 5};
    
    for (int num : contagem) {
        std::cout << num << " ";
    }
    
    return 0;
}

1 2 3 4 5


Note que no exemplo acima eu escrevi o tipo do dado que estou guardando no meu vetor, e isto é assim porque o vetor é uma classe template e portanto pode guardar diversos tipos diferentes de dados – afinal de contas esse é o princípio do vetor, que ele possa armazenar qualquer tipo de objeto que você queria sem esforço extra da sua parte.

Para incializar o vetor eu usei chaves {} e escrevi os elementos que queria colocar no vetor, separados por vírgulas, dentro das chaves. Tome cuidado, porém, com o uso dos parênteses para incializar um vetor. Se você fizer std::vector<int> numbers (5, 10), ao invés de criar um vetor com os valores 5 e 10, você criará um vetor com 5 elementos de valor 10! Meio doido, não é? Mas é assim mesmo, nesse caso você estará invocando um construtor especial da classe vector cujo primeiro argumento é a quantidade de cópias do valor passado como segundo argumento. Fique de olho nessa armadilha!

Veja também que eu estou percorrendo os elementos usando uma versão especial do loop for. Se quiser saber como esse for funciona, visite o artigo sobre como usar for e percorrer vetores usando for em C++.

Adicionar valores a um vetor em C++

Para adicionar elementos a um vetor em C++, o modo mais fácil que há consiste em usar o método push_back da classe vector. Basta invocá-lo e passar-lhe como parâmetro o elemento que se deseja adiconar ao vetor. Veja abaixo um exemplo de como isso funciona.


Exemplo 2 – Adicionar elemento a um vetor em C++

/********************************************** 
*  Como se adicionar valores a um vetor em C++
*  Exemplo #2 - push_back
***********************************************/

#include <iostream>
#include <vector>

int main() {
    std::vector<int> intVector = {10, 20, 30};
    intVector.push_back(40);
    
    for (const auto& intValue : intVector) {
        std::cout << intValue << " ";
    }

    return 0;
}

10 20 30 40


Para conhecer outras formas de adicionar elementos a um vetor, veja meu artigo sobre 7 métodos para adicionar elementos a um vetor em C++.

Como remover elementos de um vetor em C++

A próxima coisa a se saber é como remover elementos de um vetor em C++, mas sobre esse assunto há um artigo detalhado no site, então sugiro que você dê uma olhada lá, porque o artigo está bem completo e detalhado.

Conclusão

Neste artigo vimos de maneira muito breve e simples o que é um vetor em C++ e como usá-lo. Falei também sobre como adicionar elementos a um vetor em C++ e indiquei o meu outro artigo sobre como remover elementos de um vetor em C++. Se você quiser saber mais sobre os vetores em C++, recomendo que leia a partir da página 36 do livro C++ Profissional, de Marc Gregoire – ele explica direitinho o que é um vetor em C++ e dá alguns exemplo de seu uso que não tratei aqui. E aí, gostaria de saber algo a mais sobre vetor em C++?

Gostou do artigo? Então inscreva-se na nossa newsletter para não perder nenhum dos nossos artigos 🙂

Foto de perfil de Emanoel

Sou apaixonado por tecnologia, literatura e também filosofia. O cultivo dessas paixões ao longo da minha trajetória me inspiraram a compartilhar aquilo que aprendo com os outros da maneira mais clara que eu possa. Sou formado em Engenharia Elétrica no Brasil, e também sou engenheiro formado na França. Trabalho atualmente como programador C++ em uma multinacional francesa, uma das maiores empresas de TI do mundo.

Leave a Reply

Your email address will not be published. Required fields are marked *