Evitar errores en su programa en C ++

No empiece a depurar su código hasta que se elimine o al menos entender todos los avisos generados durante la compilación. Habilitar todos los mensajes de advertencia si luego ignorarlos le hace ningún bien. Si usted no entiende la advertencia, búsquelo. Lo que usted no sabe será

herirte.

Adoptar un estilo de codificación clara y consistente

Codificación en un estilo claro y consistente no sólo mejora la legibilidad del programa, pero también se traduce en un menor número de errores de codificación. Recuerde, menos poder del cerebro que tiene que gastar descifrar sintaxis de C ++, más se han guardado para pensar en la lógica del programa en cuestión. Un buen estilo de codificación le permite hacer lo siguiente con facilidad:

  • Diferenciar los nombres de clase, nombres de objetos y nombres de funciones
  • Saber algo sobre el objeto basado en su nombre
  • Diferenciar símbolos del preprocesador de C ++ símbolos (es decir, objetos #defined debe destacar)
  • Identificar bloques de código C ++ en el mismo nivel (esto es el resultado de indentación consistente)

Además, es necesario establecer una cabecera de módulo estándar que proporciona información acerca de las funciones o clases en el módulo, el autor (es de suponer, que es usted), la fecha, la versión del compilador que está usando, y una historia modificación.

Por último, todos los programadores que participan en un mismo proyecto deben utilizar el mismo estilo. Tratando de descifrar un programa con un mosaico de diferentes estilos de codificación es confuso.

Comentario el código como lo escribes

Usted puede evitar errores si usted comenta tu código mientras lo escribes en lugar de esperar hasta que todo funciona y luego volver atrás y añadir comentarios. No tomar el tiempo para escribir cabeceras voluminosas y descripciones de funciones hasta más tarde es comprensible, pero siempre tiene tiempo para agregar comentarios breves al escribir el código.

Comentarios cortos deben ser esclarecedor. Si no lo son, que no tienen mucho valor y que deberían estar haciendo otra cosa en su lugar. Usted necesita toda la iluminación se puede obtener mientras que usted está tratando de hacer su programa de trabajo. Cuando nos fijamos en un trozo de código que escribiste hace unos días, las observaciones que son cortos, descriptivo, y al punto se puede hacer una contribución dramática a ayudarle a averiguar exactamente lo que era que estaba tratando de hacer.

Además, las convenciones consistentes código de sangría y de nombres hacen que el código sea más fácil de entender. Todo es muy agradable cuando el código es fácil de leer después de que haya terminado con él, pero es igual de importante que el código sea fácil de leer mientras se está escribiendo. Eso es cuando usted necesita la ayuda.

Solo paso todos los caminos al menos una vez

Como programador, es importante que usted entienda lo que su programa está haciendo. Nada de lo que da una mejor idea de lo que está pasando bajo el capó de un solo paso a paso el programa con un buen depurador. (Los depuradores incluidos en el IDE de compiladores interactivas funcionan bien.)

Más allá de eso, a medida que escribe un programa, a veces es necesario la materia prima de averiguar algún comportamiento extraño. Nada de lo que le da ese material mejor que solo pisar nuevas funciones a medida que entran en servicio.

Finalmente, cuando una función es terminado y listo para ser añadido al programa, cada camino lógico necesita ser recorrida al menos una vez. Los insectos son mucho más fáciles de encontrar cuando la función se examina por sí mismo en lugar de después de haber sido arrojado a la olla con el resto de las funciones - y su atención ha pasado a los nuevos retos de programación.

Evite sobrecargar los operadores

Aparte del uso de los operadores de dos corrientes de E / S operatorlt; lt; () y operador >> () y el operador de asignación operator = (), probablemente debería contener a sobrecargar los operadores hasta que se sienta cómodo con C ++. Aunque un buen conjunto de operadores sobrecargados puede aumentar la utilidad y la legibilidad de una nueva clase, la sobrecarga de operadores (excepto los tres que acabamos de mencionar) casi nunca es necesario y puede aumentar significativamente sus problemas de depuración como un nuevo programador. Usted puede obtener el mismo efecto mediante la definición y el uso de las funciones miembro públicas adecuadas en su lugar.

Después de haber estado C-Plus-Plussing durante unos meses, no dude en volver y empezar a sobrecargar los operadores al contenido de su corazón.

Manejo Equilibrio montón

En general, los programadores deben asignar y liberar memoria de almacenamiento dinámico al mismo "nivel". Si una función miembro MyClass :: create () asigna un bloque de memoria del montón y lo devuelve a la persona que llama, entonces no debería ser una función miembro MyClass :: liberación () que devuelve la memoria al montón. Específicamente, MyClass :: create () no debe requerir la función madre para liberar la memoria misma. Esto ciertamente no evita todos los problemas de memoria - la función de los padres puede olvidar llamar MyClass :: liberación () - pero reduce la posibilidad de algo.

Utilice excepciones para manejar errores

El mecanismo de excepción en C ++ está diseñado para controlar los errores de forma cómoda y eficiente. Ahora que esta función se ha normalizado, que debe administrarse. El código resultante es más fácil de escribir, más fácil de leer y fácil de mantener. Además, otros programadores han llegado a esperar que - usted no quiere decepcionar a ellos, ¿verdad?

Evite la herencia múltiple

La herencia múltiple, como la sobrecarga de operadores, añade otro nivel de complejidad que no es necesario para hacer frente a cuando se está empezando. Afortunadamente, la mayoría de las relaciones del mundo real se pueden describir con herencia simple.

Siéntase libre de utilizar clases múltiples heredado de bibliotecas comerciales, tales como las clases de Microsoft MFC. Microsoft ha gastado una cantidad considerable de tiempo la creación de sus clases, y sabe lo que está haciendo.

Después de que se sienta cómodo con su nivel de comprensión de C ++, experimentar con la creación de algunos múltiples jerarquías de herencia. De esa manera, usted estará listo si lo necesita.




» » » » Evitar errores en su programa en C ++