Evitar erros em seu programa C ++

Não comece a depuração do código até que você remova ou pelo menos compreender todos os avisos gerados durante a compilação. Permitir que todas as mensagens de aviso se você, em seguida, ignorá-los faz você não é bom. Se você não compreender o aviso, procurá-lo. O que você não sabe vontade

machucar você.

Adote um estilo de codificação clara e consistente

Codificação em um estilo claro e consistente, não só melhora a legibilidade do programa, mas também resulta em menos erros de codificação. Lembre-se, quanto menos poder do cérebro que você tem que gastar decifrar a sintaxe C ++, mais você tem que sobraram para pensar sobre a lógica do programa em questão. Um estilo de codificação bom permite que você faça o seguinte com facilidade:

  • Diferenciar nomes de classe, nomes de objetos e nomes de função
  • Sabe algo sobre o objeto com base em seu nome
  • Diferenciar símbolos de pré-processamento de símbolos C ++ (ou seja, objetos #defined deve se destacar)
  • Identificar blocos de código C ++ no mesmo nível (este é o resultado de recuo consistente)

Além disso, é necessário estabelecer um cabeçalho módulo padrão que fornece informações sobre as funções ou classes no módulo, o autor (presumivelmente, que é você), a data, a versão do compilador que você está usando, e uma história modificação.

Finalmente, todos os programadores envolvidos em um único projeto deve usar o mesmo estilo. Tentando decifrar um programa com uma colcha de retalhos de diferentes estilos de codificação é confuso.

Comentar o seu código como você escrevê-lo

Você pode evitar erros se você comentar o seu código enquanto você escrevê-lo, em vez de esperar até que tudo funciona e, em seguida, voltar e adicionar comentários. Não tomar o tempo para escrever cabeçalhos volumosos e descrições de funções até mais tarde é compreensível, mas você sempre tem tempo para adicionar comentários curtos ao escrever o código.

breves comentários devem ser esclarecedor. Se não estiverem, eles não valem muito e você deve estar fazendo outra coisa em seu lugar. Você precisa de toda a iluminação que você pode obter quando você está tentando fazer o seu trabalho programa. Quando você olha para um pedaço de código que você escreveu há poucos dias, os comentários que são curtos, descritivo e direto ao ponto pode fazer uma contribuição dramática para ajudar você a descobrir exatamente o que era que você estava tentando fazer.

Além disso, recuo de código e convenções de nomenclatura consistentes tornar o código mais fácil de entender. É tudo muito bom quando o código é fácil de ler depois que você terminar com ele, mas é tão importante que o código ser fácil de ler enquanto você está escrevendo. Isso é quando você precisa da ajuda.

De um único passo todos os caminhos pelo menos uma vez

Como um programador, é importante para você entender o que seu programa está fazendo. Nada lhe dá uma sensação melhor para o que está acontecendo sob o capô que o pisar único programa com um bom depurador. (Os depuradores incluídos no IDE de compiladores interativos funcionar muito bem.)

Além disso, como você escreve um programa, às vezes você precisa de matéria-prima para descobrir algum comportamento bizarro. Nada dá-lhe que o material melhor do que um único pisar novas funções, quando entrarem em serviço.

Finalmente, quando uma função é acabado e pronto para ser adicionado ao programa, cada caminho lógico precisa ser explorada, pelo menos, uma vez. Erros são muito mais fáceis de encontrar quando a função é examinada por si só, em vez de depois de ter sido jogado na panela com o resto das funções - e sua atenção passou a novos desafios de programação.

Evite sobrecarregar operadores

Para além de utilizar as duas operadoras de fluxo de I / O operatorlt; lt; () e operador >> () eo operador de atribuição operator = (), você provavelmente deve adiar a sobrecarga de operadores até se sentir confortável com C ++. Apesar de um bom conjunto de operadores sobrecarregados pode aumentar a utilidade e legibilidade de uma nova classe, a sobrecarga de operadores (exceto os três apenas listados) quase nunca é necessário e pode aumentar significativamente suas aflições de depuração como um novo programador. Você pode obter o mesmo efeito, definindo e usando as funções de membro público adequadas vez.

Depois de ter sido C-Plus-Plussing por alguns meses, sinta-se livre para voltar e começar a sobrecarga de operadores para o conteúdo do seu coração.

manipulação de equilíbrio heap

Geralmente, os programadores devem alocar e liberar memória heap no mesmo "nível". Se uma função de membro MyClass :: create () aloca um bloco de memória heap e retorna para o chamador, então deve haver uma função de membro MyClass :: release () que retorna a memória para a pilha. Especificamente, MyClass :: create () não deve exigir a função de pai para libertar a própria memória. Isto certamente não evitar todos os problemas de memória - a função dos pais pode esquecer de chamar MyClass :: release () - mas reduz a possibilidade pouco.

Use exceções para lidar com erros

O mecanismo de exceção em C ++ é projetado para lidar com erros de forma conveniente e eficiente. Agora que este recurso foi padronizado, você deve usá-lo. O código resultante é mais fácil de escrever, mais fácil de ler e mais fácil de manter. Além disso, outros programadores têm vindo a esperar-lo - você não gostaria de decepcioná-los, não é?

Evite herança múltipla

herança múltipla, como sobrecarga de operador, acrescenta outro nível de complexidade que você não precisa lidar com quando você está apenas começando. Felizmente, a maioria dos relacionamentos do mundo real pode ser descrita com herança única.

Sinta-se livre para usar vários herdado aulas de bibliotecas comerciais, tais como as classes Microsoft MFC. Microsoft gastou uma quantidade considerável de tempo a criação de suas classes, e ele sabe o que está fazendo.

Depois de se sentir confortável com o seu nível de compreensão do C ++, experiência com a criação de alguns múltiplas hierarquias de herança. Dessa forma, você estará pronto se você precisar dele.

menu