duda conceptual C++

Felipe kelt3we en gmail.com
Lun Mayo 30 05:42:27 CLT 2011


On 05/30/2011 03:47 AM, Joe Cabezas wrote:
> claramente son distintos, uno da 3.2 XD....
> 
> estimado, yo estoy aprendiendo c++, y veo que ocupas std::cout, porque
> motivo no usas el namespace?, estoy interesado en aprender buenas practicas
> en c++, algun libroq ue recomiendes?
> 

"Accelerated C++" por Andrew Koenig y Barbara Moo
"Effective C++" y "More Effective C++" por Scott Meyers
"The C++ Programming Language" por el tío Bjarne Stroustrup

...Todos disponibles en Amazon. El primero no es caro, es bastante
leible, es el más recomendado para comenzar a aprender C++ y cuenta con
la bendición de Bjarne Stroustrup, autor original de C++.


Sobre buenas prácticas en C++: la regla más importante es que hagas lo
que hagas, intenta ser consistente y "no abusar del lenguaje".

Ahora si quieres un ejemplo extremo: este es un standard de codificación
creado por Lockheed Martin para implementar todo el software para el
F-35 Lightning II, lejos el standard más estricto que he leido, pero
bastante bien fundamentado. Si sigues todas las reglas que aparecen ahí
serás el nuevo führer:
http://www.jsf.mil/downloads/documents/JSF_AV_C++_Coding_Standards_Rev_C.doc

Algunas recomendaciones que no vas a encontrar ahí:
* Antes de implementar algun algoritmo revisa los que vienen con STL
(documentados en horrendo detalle en
http://www.cplusplus.com/reference/algorithm/)
* Intenta usar referencias de C++ en lugar de punteros cuando sea
posible. Es el "C++ way".
* Usa plantillas (templates) cuando sea estrictamente necesario.
* Intenta usar const cuando corresponde (const correctness).
http://www.parashift.com/c++-faq-lite/const-correctness.html
* Infórmate sobre el próximo standard, C++0x. Cambiará todas las reglas
del juego y algunas caracteristicas ya están disponibles en g++:
http://www2.research.att.com/~bs/C++0xFAQ.html
* Evita usar MS Visual C++ y su "biblioteca standard" (es reible lo
standard que es)

Saludos,
Felipe


Más información sobre la lista de distribución Linux