C++ do Zero — de Lógica de Programação a Orientação a Objetos¶
Bem-vindo(a)! Este curso assume que você já concluiu Lógica de Programação em C: você sabe o que é uma variável, um if, um for, um vetor de tamanho fixo e uma função. O que falta é tudo que o C não te dá de graça — e é exatamente isso que o C++ resolve.
Para quem é este curso¶
Você vai reconhecer boa parte da sintaxe. A diferença é que, a partir de agora, toda vez que em C você precisava se virar na mão — controlar o tamanho de um vetor, concatenar strings caractere por caractere, liberar memória manualmente, simular "objetos" com struct + ponteiro de função — o C++ oferece uma ferramenta pronta, testada e mais segura. Cada capítulo abre comparando "como você faria em C" com "como se faz em C++", porque esse contraste é o atalho mais rápido para aprender a linguagem nova.
Como o curso é organizado¶
O curso tem 16 semanas, divididas em 7 unidades:
- Funções (semanas 1–3) — sintaxe moderna, passagem de parâmetros, structs (do zero) e structs com métodos.
- Containers (semanas 4–6) —
vector, os algoritmos clássicos escritos à mão,mapeset. - Arquivos (semana 7) — ler e escrever dados persistentes.
- Algoritmos da biblioteca padrão (semana 9) — iteradores, lambdas e
<algorithm>, substituindo o que você escreveu à mão na Unidade 2. - Orientação a objetos (semanas 10–13) — classes, RAII, polimorfismo.
- Estruturas de dados (semana 12, entrelaçada com a Unidade 5) — filas, pilhas, listas encadeadas como aplicação prática de OO.
- Embarcados (semanas 15–16) — C++ e OO rodando de verdade no simulador Wokwi (ESP32).
A ordem não é acidental: primeiro a lógica, depois a ferramenta
Na semana 5 você escreve busca, contagem, ordenação e busca binária à mão, com for e if. Só na semana 9, depois da Avaliação 1, essas mesmas funções reaparecem prontas em <algorithm> — std::find, std::count_if, std::sort.
É de propósito. Chamar std::sort sem nunca ter ordenado nada é decorar um nome; depois de ter escrito um bubble sort, é reconhecer uma velha conhecida — e entender por que a versão da biblioteca é melhor.
O calendário completo:
| Semana | Conteúdo |
|---|---|
| 1–4 | Capítulos 1 a 4 |
| 5 | Capítulo 5 · Algoritmos clássicos, escritos à mão |
| 6–7 | Capítulos 6 e 7 |
| 8 | Avaliação 1 |
| 9 | Capítulo 8 · Iteradores, algorithm e lambdas |
| 10–11 | Capítulos 9 e 10 |
| 12 | Capítulo 13 · Filas, pilhas e listas encadeadas |
| 13 | Capítulos 11 e 12 |
| 14 | Avaliação 2 |
| 15 | Capítulo 14 · C++ no Wokwi/ESP32 |
| 16 | Capítulo 15 · Arquitetura testável, e entrega do projeto |
Cada capítulo tem uma aula em vídeo associada (linkada no topo da página) e uma lista de exercícios auto-testável: você escreve a solução, roda, e o próprio programa te diz o que passou e o que falhou — sem esperar correção de ninguém.
Ferramentas¶
A maioria dos alunos vai usar um compilador C++ online (nenhuma instalação necessária). Cada exercício tem uma versão de "arquivo único": você copia o bloco de código da página, cola no compilador, preenche a parte marcada como sua e roda. Veja Ambiente → Compilador online.
Se você tem um ambiente C++ instalado localmente (Linux, WSL, macOS), pode usar o repositório do curso direto — veja Ambiente → Ambiente local. É opcional, não obrigatório.
Avaliação¶
| Item | Peso | Quando |
|---|---|---|
| Avaliação 1 (Unidades 1–2, manuscrita) | 1/3 | Semana 8 |
| Avaliação 2 (Unidades 4–6) | 1/3 | Semana 14 |
| Projeto final | 1/3 | Semana 16 |
| Listas de exercícios | bônus até 1,0 | ao longo do curso |
As três avaliações principais têm peso igual — nenhuma delas isoladamente decide sua nota. As listas de exercícios são corrigidas automaticamente e valem como bônus, porque o objetivo delas é você praticar bastante sem medo de errar.
Veja as regras detalhadas em Avaliação 1, Avaliação 2 e o Projeto Final.
Como estudar¶
- Assista o vídeo da aula.
- Leia o capítulo correspondente — ele tem os mesmos exemplos, mas com mais contexto escrito e uma seção de "erros comuns" com mensagens reais do compilador.
- Resolva a lista de exercícios daquela semana.
- Ficou preso num erro de compilação esquisito? Consulte o Apêndice de erros comuns antes de qualquer coisa.
- Precisa consultar a assinatura de alguma função, ou quer a mesma explicação por outra voz? O apêndice de referências diz onde procurar.
Terminou as 16 semanas e quer saber o que estudar agora? Veja Próximos passos em C++.