Estudos gratuitos da ER Soluções WebVer outros conteúdos grátis
ER Soluções WebEstudos · Code Complete

13. Tipos de dados incomuns

Estruturas agrupam, ponteiros exigem isolamento e dados globais só como último recurso.

Dado global no centro sendo alterado por muitas rotinas, contra rotinas de acesso que controlam a mudança
Global só atrás de rotinas de acesso.

Resumo

Perguntas-chave

responda de cabeça, depois abra
O que é 'dado vagabundo' (tramp data)?
Dado passado por várias rotinas que não o usam, só para chegar a uma que usa. Globais ou classes podem eliminá-lo.
Por que rotinas de acesso são melhores que global direto?
Centralizam o controle, permitem validar, trocar a implementação e expressar o acesso em nível de abstração mais alto.
Como reduzir erros com ponteiros?
Isolar operações em rotinas, checar ponteiro antes de usar, usar campos de verificação (dog tags), anular após liberar, usar ponteiros inteligentes.

Exercícios de fixação

0/5 respondidas
1.
Uma variável global saldoAtual é alterada por 25 rotinas e há um bug de valor errado. Qual problema de globais isso ilustra?
2.
Qual alternativa o livro recomenda para acessar um dado que precisa ser global?
3.
Um parâmetro passa por 5 rotinas que não o usam até chegar à única que usa. Isso é:
4.
Depois de liberar a memória de um ponteiro em C++, o livro recomenda:
5.
Quando um dado pode precisar ser compartilhado, o livro sugere começar:
Seu progresso fica salvo neste navegador.