Ponteiros (C++)
Um ponteiro é uma variável que armazena o endereço de memória de um objeto. Os ponteiros são usados extensivamente em C e C++ para três propósitos principais:
- para alocar novos objetos no heap,
- para passar funções para outras funções
- para iterar sobre os elementos em matrizes ou outras estruturas de dados.
Na programação no estilo C, os ponteiros brutos são usados para todos esses cenários. No entanto, ponteiros brutos são a origem de muitos erros de programação graves. Portanto, o uso é fortemente desencorajado, exceto quando fornecem um benefício de desempenho significativo e não há ambiguidade quanto a qual ponteiro é o ponteiro proprietário responsável por excluir o objeto. O C++ moderno fornece ponteiros inteligentes para alocar objetos, iteradores para percorrer as estruturas de dados e expressões lambda para passar funções. Ao usar esses recursos de linguagem e biblioteca em vez de ponteiros brutos, você tornará o programa mais seguro, mais fácil de depurar e mais simples de reconhecer e manter. Consulte Ponteiros inteligentes, Iteradores e Expressões lambda para obter mais informações.
Nesta seção
- Ponteiros brutos
- Const e ponteiros voláteis
- operadores novos e excluídos
- Ponteiros inteligentes
- Como: Criar e usar instâncias unique_ptr
- Como: Criar e usar instâncias shared_ptr
- Como: Criar e usar instâncias weak_ptr
- Como: Criar e usar instâncias CComPtr e CComQIPtr