Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Programación C++, Apuntes de Lenguajes de Programación

Asignatura: Llenguatges de programació, Profesor: , Carrera: Enginyeria Informàtica, Universidad: UAB

Tipo: Apuntes

2012/2013

Subido el 10/11/2013

moonlight23
moonlight23 🇪🇸

3.8

(80)

8 documentos

1 / 576

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
i
i
“Volumen1_tmp” 2009/1/4 2:01 page I #1 i
i
i
i
i
i
Pensar en C++ (Volumen 1)
Traducción (INACABADA) del libro Thinking in C++, Volumen 1
Bruce Eckel
4 de enero de 2009
Puede encontrar la versión actualizada de este libro e información adicional
sobre el proyecto de traducción en
http://arco.esi.uclm.es/~david.villa/pensarC++.html
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Vista previa parcial del texto

¡Descarga Programación C++ y más Apuntes en PDF de Lenguajes de Programación solo en Docsity!

i “Volumen1_tmp” — 2009/1/4 — 2:01 — page I — #1 (^) i

i i

Pensar en C++ (Volumen 1)

Traducción (INACABADA) del libro Thinking in C++, Volumen 1

Bruce Eckel

4 de enero de 2009

Puede encontrar la versión actualizada de este libro e información adicional sobre el proyecto de traducción en http://arco.esi.uclm.es/~david.villa/pensarC++.html

i “Volumen1_tmp” — 2009/1/4 — 2:01 — page II — #2 (^) i

i i

Pensar en C++ (Volumen 1) by Bruce Eckel Copyright © 2000 Bruce Eckel

II

i “Volumen1_tmp” — 2009/1/4 — 2:01 — page IV — #4 (^) i

i i

i “Volumen1_tmp” — 2009/1/4 — 2:01 — page V — #5 (^) i

i i

i “Volumen1_tmp” — 2009/1/4 — 2:01 — page VII — #7 (^) i

i i

i “Volumen1_tmp” — 2009/1/4 — 2:01 — page VIII — #8 (^) i

i i

i “Volumen1_tmp” — 2009/1/4 — 2:01 — page X — #10 (^) i

i i

i “Volumen1_tmp” — 2009/1/4 — 2:01 — page XI — #11 (^) i

i i

i “Volumen1_tmp” — 2009/1/4 — 2:01 — page XIII — #13 (^) i

i i

i “Volumen1_tmp” — 2009/1/4 — 2:01 — page XIV — #14 (^) i

i i

i “Volumen1_tmp” — 2009/1/4 — 2:01 — page XVI — #16 (^) i

i i

Índice general

B. Directrices de Programación 527

C. Lecturas recomendadas 537 C.1. Sobre C..................................... 537 C.2. Sobre C++ en general............................. 537 C.2.1. Mi propia lista de libros....................... 537 C.3. Los rincones oscuros............................. 538 C.4. Sobre Análisis y Diseño........................... 539

XVI

i “Volumen1_tmp” — 2009/1/4 — 2:01 — page XVII — #17 (^) i

i i

Índice de cuadros

3. C en C++ 3.1. Expresiones que utilizan booleanos..................... 77 3.2. Moldes explícitos de C++.......................... 105 3.3. Nuevas palabras reservadas para operadores booleanos......... 109 12. Sobrecarga de operadores 12.1. Directrices para elegir entre miembro y no-miembro........... 357

XVII

i “Volumen1_tmp” — 2009/1/4 — 2:01 — page XIX — #19 (^) i

i i

Prólogo a la traducción

Este trabajo de traducción ha sido realizado íntegramente por voluntarios. Le agradecemos que nos comunique cualquier error de traducción o transcripción en el texto. También será bienvenido si desea colaborar más activamente en la traducción. Puede encontrar información para ello en nuestra página web 1. Ayúdenos a hacer de esta traducción un trabajo de calidad. Tenga presente que el trabajo de traducción no ha terminado. Si utiliza el libro en el estado actual es probable que encuentre innumerables errores. Por favor, no nos los notifique por ahora. Le agradeceremos su colaboración para corregir posibles erratas cuando el trabajo se dé por terminado, pero ese momento aún no ha llegado (falta poco). Ello no implica que el libro no pueda serle útil en su estado actual. Este capítulo se actualiza frecuentemente y no lo daré por terminado hasta que concluya el proceso de traducción y revisión de este volumen al menos. La traduc- ción del Volumen 2 acaba de comenzar.

Licencia y normas de distribución

El equipo de traducción ha seguido al pié de la letra las directrices marcadas por Bruce Eckel (autor del libro original) para la realización de traducciones y dis- tribución de éstas. Si utiliza o distribuye este texto debe cumplirlas y advertir de su existencia a los posibles lectores. El equipo de traducción elude toda responsabili- dad por la violación -por parte de terceros- de las citadas directrices^2. Se incluyen a continuación respetando el idioma original (para evitar eventuales interpretaciones incorrectas): In my contract with the publisher, I maintain all electronic publishing rights to the book, including translation into foreign languages. This means that the publisher still handles negotiations for translations that are prin- ted (and I have nothing directly to do with that) but I may grant transla- tion rights for electronic versions of the book. I have been granting such rights for “open-source” style translation pro- jects. (Note that I still maintain the copyright on my material.) That is: You must provide a web site or other medium whereby people may participate in the project (two easy possibilities are http://www.egroups.com or http://www.topica.com). You must maintain a downloadable version of the partially or fully translated version of the book. (^1) http://arco.esi.uclm.es/~david.villa/pensarC++.html (^2) El texto original de estas directrices está accesible en la página web del autor.

XIX

i “Volumen1_tmp” — 2009/1/4 — 2:01 — page XX — #20 (^) i

i i

Prólogo a la traducción

Someone must be responsible for the organization of the translation (I cannot be actively involved - I don’t have the time). There should only be one language translation project for each book. We don’t have the resources for a fork. As in an open-source project, there must be a way to pass responsi- bility to someone else if the first person becomes too busy. The book must be freely distributable. The book may be mirrored on other sites. Names of the translators should be included in the translated book.

El proyecto de traducción Si desea saber más sobre este proyecto visite http://arco.inf-cr.uclm.es/~david.villa/- pensarC++.html.

Tecnicismos Se han traducido la mayor parte de los términos específicos tanto de orientación a objetos como de programación en general. Para evitar confusiones o ambigüedades a los lectores que manejen literatura en inglés hemos incluido entre paréntesis el término original la primera vez que aparece traducido. Para traducir tecnicismos especialmente complicados hemos utilizado como refe- rencia la segunda edición de El lenguaje de Programación C++ (en castellano) así como la Wikipedia. En contadas ocasiones se ha mantenido el término original en inglés. En benefi- cio de la legibilidad, hemos preferido no hacer traducciones demasiado forzadas ni utilizar expresiones que pudieran resultar desconocidas en el argot o en los libros especializados disponibles en castellano. Nuestro propósito es tener un libro que pueda ser comprendido por hispano-hablantes. Es a todas luces imposible realizar una traducción rigurosa acorde con las normas lingüísticas de la RAE, puesto que, en algunos casos, el autor incluso utiliza palabras de su propia invención.

Código fuente Por hacer

Producción El texto ha sido escrito en el lenguaje de marcado DocBook versión 4.3 en su variante XML. Cada capítulo está contenido en un fichero independiente y todos ellos se incluyen en un fichero “maestro” utilizando XInclude. Debido a que muchos procesadores de DocBook no soportan adecuadamente la característica XInclude, se usa la herramienta xsltproc para generar un único fichero XML que contiene el texto de todo el libro. XX