C++17 em Detalhes
338 páginas
Portuguese
PDF
4.5

C++17 em Detalhes

C++17 em Detalhes

Autor:

Ano:

Resumo:

Introdução

O livro «C++17 em Detalhes» de autoria de Bartłomiej Filipek foi lançado em 2019 e imediatamente se tornou uma das fontes mais conceituadas sobre o novo padrão C++17. Não é mais um tutorial para iniciantes — é um guia técnico profundo que ajudará desenvolvedores de nível intermediário e avançado a dominar todos os principais recursos do padrão C++17 e aprender a aplicá-los na prática. O livro contém 338 páginas de informação concentrada, apoiada por exemplos de código e dicas práticas.

Sobre o que é este livro?

«C++17 em Detalhes» é dedicado a uma análise detalhada das inovações trazidas pelo padrão C++17. O autor examina sequencialmente cada recurso, começando pela linguagem e terminando com a biblioteca padrão. No livro você encontrará:

  • Structured bindings — como desempacotar tuplas, pares e estruturas em variáveis separadas.
  • if constexpr — compilação de ramos condicionais em tempo de compilação, permitindo escrever código de template mais eficiente e limpo.
  • std::optional, std::variant, std::any — novos tipos wrapper para trabalhar com segurança com valores opcionais, alternativas e tipos dinâmicos.
  • string_view — uma visão não proprietária de string, acelerando o trabalho com substrings sem cópia.
  • Algoritmos paralelos — a biblioteca padrão agora suporta execução paralela de algoritmos (std::execution::par).
  • Sistema de arquivos (std::filesystem) — trabalho multiplataforma com arquivos e diretórios.
  • Melhorias em constexpr — agora é possível escrever funções constexpr com loops, ramificações e até alocação dinâmica de memória (limitada).
  • Novos atributos — [[fallthrough]], [[maybe_unused]], [[nodiscard]] e outros.
  • Simplificação de templates — deduction guides, auto em parâmetros de template, fold expressions.

Cada capítulo é construído com base no princípio "da teoria à prática": primeiro, a sintaxe e a semântica são explicadas, depois são fornecidos exemplos reais de uso e, no final, erros típicos e recomendações.

Para quem é este livro?

O livro é destinado a programadores que já têm experiência com C++ (pelo menos no nível C++11/14) e desejam dominar rápida e qualitativamente o C++17. Será útil para:

  • Desenvolvedores que estão migrando de padrões mais antigos para o C++17.
  • Engenheiros que escrevem sistemas de alta carga ou embarcados e desejam usar novos recursos para otimização.
  • Professores e estudantes de graduação que estudam C++ moderno.
  • Todos que desejam escrever código mais seguro, expressivo e eficiente.

O livro não é adequado para programadores iniciantes — é necessário um conhecimento sólido dos fundamentos de C++ (ponteiros, templates, STL) para entender o material.

O que o leitor aprenderá?

Após a leitura do livro, você será capaz de:

  • Usar com confiança todas as principais inovações do C++17 no trabalho diário.
  • Escrever código mais limpo e conciso com structured bindings e if constexpr.
  • Aplicar std::optional e std::variant para tratamento seguro de erros e estados alternativos.
  • Trabalhar com o sistema de arquivos sem bibliotecas externas.
  • Acelerar algoritmos com versões paralelas da STL.
  • Entender os mecanismos internos dos novos tipos e saber evitar armadilhas.
  • Preparar-se para a transição para o C++20, pois muitos recursos do C++17 são a base para padrões futuros.

Pontos fortes do livro

1. Profundidade e estrutura. O autor não apenas lista os recursos, mas explica por que foram adicionados, quais problemas resolvem e como aplicá-los corretamente. Cada capítulo contém uma seção "Common pitfalls" (erros típicos), o que é muito valioso para o desenvolvedor prático.

2. Orientação prática.

Recommendations