Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Considerações de Desempenho com Smart Pointers | Tópicos Avançados
C++ Smart Pointers
course content

Conteúdo do Curso

C++ Smart Pointers

C++ Smart Pointers

1. Introdução a Ponteiros Inteligentes
2. Ponteiros Únicos
3. Ponteiros Compartilhados
4. Ponteiros Fracos
5. Tópicos Avançados

book
Considerações de Desempenho com Smart Pointers

Sobrecarga de Ponteiros Inteligentes

Ponteiros inteligentes introduzem alguma sobrecarga em comparação com ponteiros brutos devido a funcionalidades adicionais como contagem de referências e gerenciamento automático de recursos. Embora essa sobrecarga seja frequentemente mínima, desenvolvedores orientados para desempenho devem estar atentos ao seu impacto potencial.

Uma abordagem melhor é refatorar o código gradualmente, medindo o desempenho após cada iteração, e selecionando uma combinação de std::shared_ptr e std::unique_ptr com base no caso de uso específico e nas necessidades de gerenciamento de recursos.

Minimize o Overhead do Shared Pointer

Shared pointers têm overhead extra devido à contagem de referências, o que pode impactar o desempenho, especialmente em operações frequentes ou com muitos shared pointers. Para otimizar, evite cópias desnecessárias e use std::unique_ptr quando a propriedade compartilhada não for necessária.

Regularmente faça benchmark e perfil de segmentos de código que usam smart pointers para identificar gargalos e otimizar o desempenho. Você pode usar ferramentas como Google Benchmark ou Valgrind para esse propósito.

question mark

Qual é a principal razão pela qual smart pointers introduzem overhead em comparação com ponteiros brutos?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 5. Capítulo 2
Sentimos muito que algo saiu errado. O que aconteceu?
some-alt