¿Cómo dominar C ++? Ya estoy claro con el currículo de la clase 12 de la junta de CBSE?

  • Nunca caiga en la trampa de libros malos (mal escritos) que pretenden enseñar programación en C ++. Por ejemplo, libros de Yashwant Kenetkar, Balagurusamy, etc.
  • Nunca caiga en la trampa de usar compiladores no estándar y mal mantenidos, por ejemplo, se suspende el turbo C ++.
  • Elige un buen ide y compilador. Muchos de estos están disponibles de forma gratuita, por ejemplo: g ++, clang ++, microsoft visual studio express edition, etc. Pruebe alguna combinación y elija la que más le convenga. (Yo uso el editor Vim con algunas extensiones + compilador gcc).
  • Usa C ++ 11 o posterior para compilar tu código. Use -Wall, -W, -Wextra, -O2 o banderas equivalentes para asegurarse de que reciba las advertencias adecuadas.
  • Elige un buen libro para aprender. Una lista de buenos libros está disponible en The Definitive C ++ Book Guide and List. He mencionado algunos de mis favoritos en la respuesta de Mohit Jain. Tengo unas vacaciones de aproximadamente 45 días y deseo utilizar este tiempo para aprender C ++. ¿Qué libros / tutoriales debo seguir?
  • Siga las preguntas altamente votadas con la etiqueta C ++ en stackoverflow. (Puedes suscribirte para un resumen)
  • Resolver todos y cada uno (resuelto y no resuelto) ejercicio del libro. Escribe tanto código como puedas.
  • Aprenda a depurar el código usando instrucciones de impresión, depurador, explicando el código a otros (también conocido como depuración de pato de goma).
  • Si algún libro o maestro te enseña cosas raras como la salida de expresiones como i++ - i++, ignora el libro / teacher. Si el libro (o el maestro) dice que esta es una línea extraña y causa un comportamiento indefinido, sé todo oídos.
  • Aprende a hacer el papeleo adecuado antes de saltar en el código.
  • Manténgase alejado de los trucos de magia de optimización aparentemente prematura.
  • Use módulos (múltiples archivos de origen) y archivos make cuando sea aplicable.
  • Aprender sobre el desarrollo y uso del framework de testing.
  • Intenta resolver problemas algorítmicos utilizando tus aprendizajes. Puede encontrar muchos problemas en el proyecto euler, SPOJ, UVA, Google Code Jam, TopCoder, CodeFuerces, Codechef, etc.