
Curso de C++
Domine o C++ do zero — desde sintaxe básica e gerenciamento de memória até templates, concorrência e recursos modernos do C++23. Este curso oferece a profundidade técnica e a prática necessária para escrever código C++ rápido, seguro e de nível profissional. Se você está visando programação de sistemas, desenvolvimento embarcado ou aplicações de alto desempenho, este é o conjunto completo de habilidades de que você precisa.
O que você vai aprender:
Você construirá uma base sólida na sintaxe de C++, controle de fluxo e funções antes de avançar para ponteiros, gerenciamento de memória e programação orientada a objetos. Você dominará a Biblioteca Padrão de Modelos, escreverá código genérico com templates e aplicará recursos modernos como lambdas, semântica de movimento e vinculações estruturadas. O curso também cobre tratamento de erros, teste unitário, perfilamento de desempenho, sistemas de build com CMake e práticas profissionais, incluindo controle de versão e revisão de código. Ao final, você terá as habilidades para desenvolver software C++ de qualidade profissional em uma ampla gama de domínios.
Como você estuda de forma prática Curso de C++
Como você pratica Curso de C++
Para si que é empresa e quer formar a equipa
Na Dedika para empresas, o curso inclui exercícios e exemplos do próprio negócio e adaptados às necessidades da sua empresa.
Conteúdo do curso
8 Capítulos • 40 AulasDuração entre 4 e 360 horas (você decide)
Capítulo 1EsconderEsconder detalhesVer detalhesFundamentos de C++ e Configuração de Ambiente
Fundamentos de C++ e Configuração de Ambiente
Aula 1 • Variáveis, Tipos e Literais
Apresenta tipos de dados fundamentais, declaração de variáveis e valores literais. Constrói o vocabulário necessário para toda a manipulação de dados futura.
Aula 2 • Configuração do Ambiente de Desenvolvimento
Instale compiladores, IDEs e ferramentas de build para desenvolvimento em C++. Fornece a base técnica da qual todos os capítulos subsequentes dependerão.
Aula 3 • Operadores e Expressões
Explora operadores aritméticos, relacionais, lógicos e bitwise. Regras de precedência de operadores são aplicadas para escrever expressões corretas.
Aula 4 • Sintaxe Básica e Estrutura do Programa
Aborda a anatomia de um arquivo fonte C++, incluindo headers, função main e instruções. Conecta regras de sintaxe a código legível e compilável.
Aula 5 • Entrada e Saída com iostream
Ensina E/S de console usando cin e cout da biblioteca padrão. Permite programas interativos essenciais para exercícios iniciais.
Capítulo 2EsconderEsconder detalhesVer detalhesFluxo de Controle e Funções
Fluxo de Controle e Funções
Aula 1 • Laços e Iteração
Apresenta laços for, while e do-while juntamente com instruções de controle de laço. Padrões de repetição fundamentam algoritmos em capítulos posteriores.
Aula 2 • Escopo, Tempo de Vida e Classes de Armazenamento
Explica o escopo de variáveis local, global e estática e o tempo de vida de objetos. Previne bugs comuns causados por visibilidade de variável mal compreendida.
Aula 3 • Recursão e Sobrecarga de Funções
Apresenta resolução recursiva de problemas e múltiplas assinaturas de função com o mesmo nome. Prepara os alunos para padrões algorítmicos complexos.
Aula 4 • Declaração e Definição de Funções
Ensina como declarar, definir e chamar funções com parâmetros e tipos de retorno. Funções são a unidade primária de reuso de código em C++.
Aula 5 • Instruções Condicionais
Aborda construções if, else-if, else e switch para tomada de decisão. Habilita diretamente programas orientados por lógica construídos ao longo do curso.
Capítulo 3EsconderEsconder detalhesVer detalhesArrays, Ponteiros e Memória
Arrays, Ponteiros e Memória
Aula 1 • Alocação Dinâmica de Memória
Ensina alocação no heap com new e desalocação com delete. O gerenciamento adequado de recursos aqui previne vazamentos de memória em todos os programas futuros.
Aula 2 • Arrays e Strings no Estilo C
Aborda arrays de tamanho fixo, arrays multidimensionais e strings terminadas em nulo. Estabelece as estruturas de dados de baixo nível sobre as quais os ponteiros se baseiam.
Aula 3 • Referências e Correção Const
Distingue referências de ponteiros e impõe o uso de const para segurança. Correção const é um padrão profissional de codificação em C++.
Aula 4 • Visão Geral de Smart Pointers
Apresenta unique_ptr, shared_ptr e weak_ptr como alternativas mais seguras aos ponteiros brutos. Faz a ponte entre o gerenciamento manual de memória e os idiomas modernos de C++.
Aula 5 • Conceitos Básicos de Ponteiros
Apresenta declaração de ponteiro, operador endereço-de e desreferenciação. Ponteiros são centrais para a memória dinâmica e recursos de orientação a objetos adiante.
Capítulo 4EsconderEsconder detalhesVer detalhesProgramação Orientada a Objetos em C++
Programação Orientada a Objetos em C++
Aula 1 • Polimorfismo e Funções Virtuais
Implementa polimorfismo em tempo de execução via funções virtuais e classes abstratas. Permite designs flexíveis e extensíveis, centrais para grandes bases de código C++.
Aula 2 • Herança e Hierarquias de Classes
Modela relacionamentos é-um usando herança simples e múltipla. Estabelece a estrutura de hierarquia necessária para o polimorfismo.
Aula 3 • Sobrecarga de Operadores
Permite que tipos personalizados usem operadores padrão de forma natural e expressiva. Reforça o encapsulamento mantendo a lógica dentro da classe.
Aula 4 • Construtores, Destrutores e Inicialização
Ensina o gerenciamento do ciclo de vida de objetos através de construtores e destrutores. A inicialização adequada previne comportamento indefinido em programas complexos.
Aula 5 • Classes e Objetos
Aborda definição de classe, membros de dados, funções membro e especificadores de acesso. Classes são o principal mecanismo de abstração em C++.
Capítulo 5EsconderEsconder detalhesVer detalhesA Biblioteca Padrão de Templates (STL)
A Biblioteca Padrão de Templates (STL)
Aula 1 • Manipulação de Strings com std::string
Aborda operações, manipulação e utilitários de conversão de std::string. Substitui strings inseguras no estilo C por uma alternativa segura e rica em funcionalidades.
Aula 2 • Algoritmos da STL
Aplica algoritmos de ordenação, pesquisa, transformação e acumulação de <algorithm>. Substitui laços manuais propensos a erros por expressões concisas.
Aula 3 • Containers Associativos e Não Ordenados
Apresenta map, set, unordered_map e unordered_set para acesso baseado em chave. Permite padrões de busca rápida usados em aplicações do mundo real.
Aula 4 • Containers Sequenciais
Aborda vector, list, deque e array para armazenamento ordenado de dados. Escolher o container certo impacta diretamente o desempenho do programa.
Aula 5 • Iteradores e Intervalos
Explica categorias de iteradores, padrões de travessia e operações baseadas em intervalo. Iteradores são a interface universal entre containers e algoritmos.
Capítulo 6EsconderEsconder detalhesVer detalhesTemplates e Programação Genérica
Templates e Programação Genérica
Aula 1 • Conceitos e Restrições em C++20
Aplica conceitos de C++20 para restringir parâmetros de template com requisitos legíveis. Produz mensagens de erro mais claras e interfaces autodocumentadas.
Aula 2 • Fundamentos de Metaprogramação com Templates
Apresenta computação em tempo de compilação usando type traits e constexpr. Habilita abstrações de custo zero e validação em tempo de compilação.
Aula 3 • Templates de Função
Introduz a sintaxe de templates para escrever funções genéricas com parâmetros de tipo. Elimina a duplicação de código enquanto preserva a segurança total de tipos.
Aula 4 • Templates de Classe
Estende templates para classes, permitindo containers e utilitários genéricos. Sustenta os containers da STL estudados no capítulo anterior.
Aula 5 • Templates Variádicos
Aborda pacotes de parâmetros e expressões fold para templates de argumentos variáveis. Permite APIs flexíveis como std::tuple e utilitários de logging.
Capítulo 7EsconderEsconder detalhesVer detalhesRecursos e Idiomas Modernos de C++
Recursos e Idiomas Modernos de C++
Aula 1 • Structured Bindings e std::optional
Apresenta structured bindings para decomposição de tipos tuple-like e optional para valores anuláveis. Reduz boilerplate e expressa a intenção claramente.
Aula 2 • std::variant e std::any
Aborda unions type-safe com std::variant e armazenamento com apagamento de tipo com std::any. Substitui unions C inseguras e ponteiros void em código moderno.
Aula 3 • Fundamentos de Concorrência com std::thread
Introduz criação de threads, primitivas de sincronização e prevenção de data races. Prepara os alunos para o desenvolvimento de aplicações multi-thread.
Aula 4 • Semântica de Movimento e Referências Rvalue
Explica referências rvalue, construtores de movimento e atribuição de movimento para desempenho. Elimina cópias desnecessárias em programas intensivos em recursos.
Aula 5 • Expressões Lambda e Closures
Aborda sintaxe lambda, listas de captura e uso com algoritmos da STL. Permite objetos função inline concisos sem boilerplate.
Capítulo 8EsconderEsconder detalhesVer detalhesTratamento de Erros, Testes e Desempenho
Tratamento de Erros, Testes e Desempenho
Aula 1 • Profiling e Análise de Desempenho
Aplica ferramentas de profiling para identificar hotspots e medir tempo de execução. Otimização orientada por dados evita ajustes prematuros e equivocados.
Aula 2 • Teste Unitário em C++
Introduz frameworks de teste, design de casos de teste e fluxo de trabalho de desenvolvimento orientado a testes. Testes automatizados verificam a correção à medida que o código evolui.
Aula 3 • Asserções e Programação Defensiva
Usa assert, static_assert e verificações de pré-condição para detectar bugs precocemente. Técnicas defensivas reduzem o tempo de depuração em grandes bases de código.
Aula 4 • Técnicas de Otimização
Aborda layouts de dados amigáveis ao cache, melhorias algorítmicas e dicas para o compilador. Aplica descobertas de profiling para obter acelerações mensuráveis.
Aula 5 • Tratamento de Exceções
Aborda sintaxe try-catch-throw, hierarquias de exceção e design de código à prova de exceções. A propagação adequada de erros é obrigatória em software C++ profissional.
Seu certificado válido de conclusão
Este curso é para si:
Estudante de ciência da computação: ansioso para ir além do pseudocódigo para linguagens do mundo real.
Desenvolvedor Python ou JavaScript: pronto para entender o que acontece abaixo da abstração.
Aspirante a desenvolvedor de jogos: precisando do controle de baixo nível que o C++ oferece de forma única.
Engenheiro eletricista: procurando escrever firmware e drivers com ferramentas de linguagem modernas.
Pessoa em transição de carreira: mirando funções de programação de sistemas bem remuneradas, vindo de uma formação não-CS.
Construtor entusiasta: querendo programar microcontroladores e dispositivos embarcados de forma mais eficaz.
O que os nossos alunos dizem
As vossas aulas são perfeitas. Adquiri o pacote de um ano e, finalmente, tenho a oportunidade de acompanhar diversos temas do meu interesse sem precisar mudar de plataforma... agradeço por tudo o que fazem, já vos recomendei a outras pessoas...

Gosto de como as lições são directas ao assunto e como consigo alterar capítulos e saltar conteúdos que não preciso.

Gosto do conteúdo e do modo de apresentação e transcrição de vídeos, o que acelera o processo!

A plataforma é rápida, simples de usar. A diversidade de conteúdo e os vídeos complementares ajudam muito na aprendizagem.

Principais capacitações
FAQ
Quem é a Dedika?
O certificado é válido em Brasil?
Os cursos são gratuitos?
Qual é a carga horária do curso?
Como são os cursos?
Como funcionam os cursos?
Qual é a duração dos cursos?
Qual é o custo ou preço dos cursos?
O que é um curso EAD ou online e como funciona?
Curso em PDF




















