• No se han encontrado resultados

El lenguaje C++.ppt

N/A
N/A
Protected

Academic year: 2018

Share "El lenguaje C++.ppt"

Copied!
30
0
0

Texto completo

(1)

El lenguaje C++

El lenguaje C++

Historia, evolución,

Historia, evolución,

(2)

Nacimiento de C

Nacimiento de C

 Fue Fue Dennis Ritchie Dennis Ritchie quien en 1969 creo el quien en 1969 creo el

lenguaje

lenguaje C C a partir de las ideas diseñadas pora partir de las ideas diseñadas por otro lenguaje llamado

otro lenguaje llamado B B inventado por inventado por Ken Ken Thompson

Thompson, quien en los años 70 fue el, quien en los años 70 fue el encargado de desarrollar el

encargado de desarrollar el lenguaje C.lenguaje C.

 Ritchie lo inventó para programar la Ritchie lo inventó para programar la

computadora

computadora PDP-11 que utilizaba el sistemaPDP-11 que utilizaba el sistema UNIX (el propio Ritchie creo también

(3)

Éxito de C

Éxito de C

 La historia de C está muy ligada a la de La historia de C está muy ligada a la de

UNIX, este sistema siempre ha incorporado UNIX, este sistema siempre ha incorporado

compiladores para trabajar en C. El lenguaje compiladores para trabajar en C. El lenguaje

C se diseñó como lenguaje pensado para C se diseñó como lenguaje pensado para

programar sistemas operativos. programar sistemas operativos.

 Tuvo un éxito inmediato y sus programas eranTuvo un éxito inmediato y sus programas eran

muy compatibles con todo tipo de sistemas muy compatibles con todo tipo de sistemas

por lo que se transportó a todo tipo de por lo que se transportó a todo tipo de

máquinas y utilidades (proceso de textos, máquinas y utilidades (proceso de textos,

(4)

Estandarización

Estandarización

 En 1983 el organismo En 1983 el organismo ANSI ANSI ((Instituto de Instituto de

Estándares de Estados Unidos

Estándares de Estados Unidos) empezó a ) empezó a producir un C estándar para normalizar su producir un C estándar para normalizar su

situación. situación.

 En 1989 aparece el considerado como C En 1989 aparece el considerado como C

estándar que fue aceptado por

estándar que fue aceptado por ISO ISO ((Instituto Instituto Mundial de Estándares

Mundial de Estándares), organismo ), organismo

internacional de estándares. Actualmente este internacional de estándares. Actualmente este

C es universalmente aceptado como el C C es universalmente aceptado como el C

(5)

Evolución

Evolución

 En 1986 En 1986 Bjarne Stroupstrup Bjarne Stroupstrup creo un creo un

lenguaje inspirado en

lenguaje inspirado en Simula Simula pero utilizando pero utilizando la sintaxis del lenguaje C.

la sintaxis del lenguaje C.

 Hay que entender que C++ no es un C Hay que entender que C++ no es un C

mejorado, sino que utiliza la sintaxis de C para mejorado, sino que utiliza la sintaxis de C para crear un lenguaje mucho más potente y sobre crear un lenguaje mucho más potente y sobre todo preparado para utilizar la programación todo preparado para utilizar la programación

orientada a objetos, que está ya considerada orientada a objetos, que está ya considerada

como el método de programación más como el método de programación más

(6)

Ojo No Confundir

Ojo No Confundir

No obstante todos los compiladores de

No obstante todos los compiladores de

C++ admiten crear programas en C.

C++ admiten crear programas en C.

C y C++, comparten instrucciones casi

C y C++, comparten instrucciones casi

idénticas. Pero la forma de programar

idénticas. Pero la forma de programar

es absolutamente diferente.

es absolutamente diferente.

Saber programar en C no implica

Saber programar en C no implica

saber programar en C++

(7)

Antes de C++

(8)

Ventajas de C++

Ventajas de C++

Es un lenguaje que permite programar

Es un lenguaje que permite programar

de forma estructurada, modular y

de forma estructurada, modular y

orientado a objetos. Por lo que permite

orientado a objetos. Por lo que permite

la asimilación de todas estas técnicas.

la asimilación de todas estas técnicas.

Es un lenguaje que permite el manejo

Es un lenguaje que permite el manejo

de todo tipo de estructuras de datos.

de todo tipo de estructuras de datos.

Es un lenguaje compilado, lo que le

Es un lenguaje compilado, lo que le

hace muy rápido (quizá el más rápido,

hace muy rápido (quizá el más rápido,

(9)

Mas ventajas de C++

Mas ventajas de C++

Permite crear todo tipo de aplicaciones Permite crear todo tipo de aplicaciones (aunque no está pensado para crear

(aunque no está pensado para crear

aplicaciones para ejecutar desde Internet)

aplicaciones para ejecutar desde Internet)

Gracias a su capacidad de uso de objetos y Gracias a su capacidad de uso de objetos y clases, facilita la reutilización del código

clases, facilita la reutilización del código

Permite incorporar las librerías más Permite incorporar las librerías más utilizadas para hacer aplicaciones

utilizadas para hacer aplicaciones

Es el lenguaje que sirve de base para los Es el lenguaje que sirve de base para los lenguajes modernos como Java, C#, Perl,...

(10)

Después de C++

(11)

Entornos de

Entornos de

programación

programación

Editor de código.

Editor de código.

Programa utilizado

Programa utilizado

para escribir el código.

para escribir el código.

Intérprete o compilador.

Intérprete o compilador.

El software que

El software que

convierte el lenguaje en código máquina.

convierte el lenguaje en código máquina.

Depurador.

Depurador.

Programa que se utiliza para

Programa que se utiliza para

realizar pruebas sobre el programa.

realizar pruebas sobre el programa.

Organizador de ficheros.

Organizador de ficheros.

administrar los

administrar los

(12)

Compiladores

Compiladores

Turbo C/C++. Turbo C/C++.

http://community.borland.com/article/images/21751/tc

http://community.borland.com/article/images/21751/tc

pp101.zip

pp101.zip

Borland C/C++. Borland C/C++. Más orientado a C++, versión más Más orientado a C++, versión más

moderna moderna

Microsoft C/C++. Microsoft C/C++. Compilador C de Microsoft(95)Compilador C de Microsoft(95)

Visual Studio. Visual Studio. Ahora llamado Visual Studio .NET Ahora llamado Visual Studio .NET

GCC. GCC. Compilador C++ con licencia GNU Compilador C++ con licencia GNU http://gcc.gnu.org/http://gcc.gnu.org/

KDevelop. KDevelop. Entorno de programación en LinuxEntorno de programación en Linux

(13)

Primeras fases de

Primeras fases de

compilación

compilación

[1] Edición[1] Edición. El código se escribe en un editor de texto . El código se escribe en un editor de texto

o en un editor de código preparado para esta acción. El o en un editor de código preparado para esta acción. El archivo se suele guardar con extensión

archivo se suele guardar con extensión .cpp .cpp (también (también en

en cxx, c++ o cccxx, c++ o cc))

[2] Preprocesado[2] Preprocesado. Antes de compilar el código, el . Antes de compilar el código, el

preprocesador lee las instrucciones de preprocesador y preprocesador lee las instrucciones de preprocesador y las convierte al código fuente equivalente.

las convierte al código fuente equivalente.

[3] Compilación. [3] Compilación. El código fuente resultante en El código fuente resultante en

lenguaje C++ se compila mediante el software lenguaje C++ se compila mediante el software

apropiado, obteniendo un código máquina llamado apropiado, obteniendo un código máquina llamado archivo objeto (cuya extensión suele ser

archivo objeto (cuya extensión suele ser .obj.obj). Este ). Este código aún no es ejecutable ya que necesita incluir el código aún no es ejecutable ya que necesita incluir el código máquina. Estas funciones están incluidas en código máquina. Estas funciones están incluidas en archivos externos (

(14)

Fases de compilación

(15)

Ultimas fases de

Ultimas fases de

compilación

compilación

[4] Enlazado. [4] Enlazado. El código objeto se une al código El código objeto se une al código

compilado de las librerías y módulos invocados por el compilado de las librerías y módulos invocados por el código anterior. El resultado es un archivo ejecutable código anterior. El resultado es un archivo ejecutable

[5] Cargado. [5] Cargado. Normalmente lo realiza el propio Normalmente lo realiza el propio

entorno de ejecución. El archivo ejecutable se lanza entorno de ejecución. El archivo ejecutable se lanza

en el Sistemas Operativo en el Sistemas Operativo

[6] Ejecución de las instrucciones por la CPU. [6] Ejecución de las instrucciones por la CPU.

Es entonces cuando el procesador accede al código Es entonces cuando el procesador accede al código

máquina del programa ya convertido y ejecuta las máquina del programa ya convertido y ejecuta las

acciones.Será entonces cuando veamos los acciones.Será entonces cuando veamos los

(16)

Fases de compilación

(17)

El primer programa en C+

El primer programa en C+

+

+

En todos los lenguajes de programación, el

En todos los lenguajes de programación, el

primer programa a realizar es el famoso

primer programa a realizar es el famoso

Hola mundo,

Hola mundo,

un programa que escribe

un programa que escribe

este texto en pantalla.

este texto en pantalla.

#include <

#include <

iostream

iostream

>

>

int

int mainmain()() {

{

std::cout

std::cout << << "Hola mundo";"Hola mundo"; Return 0;

Return 0; }

(18)

Explicación del código

Explicación del código

[1]

[1]

La línea

La línea

include

include

permite utilizar

permite utilizar

funciones de la librería

funciones de la librería

iostream

iostream

que

que

es la que permite leer y escribir datos

es la que permite leer y escribir datos

por la consola del Sistema Operativo

por la consola del Sistema Operativo

[2]

[2]

La función

La función

main

main

es la función

es la función

cuyas instrucciones se ejecutan en

cuyas instrucciones se ejecutan en

(19)

[3]

[3]

La instrucción

La instrucción

std::cout <<

std::cout <<

"Hola mundo"

"Hola mundo"

es la encargada de

es la encargada de

escribir el texto

escribir el texto

"Hola mundo"

"Hola mundo"

por

por

pantalla

pantalla

[4]

[4]

La instrucción

La instrucción

return 0

return 0

finaliza el

finaliza el

programa e indica (con el valor cero)

programa e indica (con el valor cero)

que la finalización ha sido correcta.

(20)

Elementos del programa

Elementos del programa

 Los programas en C++ se basan en sentencias Los programas en C++ se basan en sentencias

las cuales siempre se incluyen dentro de una las cuales siempre se incluyen dentro de una

función. función.

 En el caso de crear un programa ejecutable, En el caso de crear un programa ejecutable,

esas sentencias están dentro de la función esas sentencias están dentro de la función

main.

main. A está función le precede la palabra A está función le precede la palabra void void

o la palabra

o la palabra intint..

 Ahora bien al escribir sentencias hay que tener Ahora bien al escribir sentencias hay que tener

(21)

Normatividad

Normatividad

[1] [1] Toda sentencia en C++ termina con el "punto y Toda sentencia en C++ termina con el "punto y

coma" ( coma" (;;))

[2] [2] Los bloques de sentencia empiezan y terminan Los bloques de sentencia empiezan y terminan

delimitados con el símbolo de llave ({ inicio y fin }). delimitados con el símbolo de llave ({ inicio y fin }).

[3] [3] En C++ hay distinción entre mayúsculas y En C++ hay distinción entre mayúsculas y

minúsculas. No es lo mismo

minúsculas. No es lo mismo main main que que MAINMAIN. Todas . Todas las palabras claves de C++ están en minúsculas.

las palabras claves de C++ están en minúsculas.

[4] [4] Los nombres que pongamos nosotros también Los nombres que pongamos nosotros también

conviene ponerles en minúsculas ya que el código es conviene ponerles en minúsculas ya que el código es mucho más legible así.

(22)

Comentarios

Comentarios

 Se trata de texto que es ignorado por el compilador Se trata de texto que es ignorado por el compilador

al traducir el código. Esas líneas se utilizan para al traducir el código. Esas líneas se utilizan para

documentar el programa. documentar el programa.

 Esta labor de documentación es fundamental ya Esta labor de documentación es fundamental ya

que sino en cuanto pasa un tiempo el código no se que sino en cuanto pasa un tiempo el código no se

comprende bien (ni siquiera por el autor del comprende bien (ni siquiera por el autor del

mismo). mismo).

 Todavía es más importante cuando el código va a Todavía es más importante cuando el código va a

ser tratado por otras personas; de otro modo una ser tratado por otras personas; de otro modo una

persona que modifique el código de otra lo tendría persona que modifique el código de otra lo tendría

(23)

Tipos de Comentarios

Tipos de Comentarios

En C++ hay dos tipos de comentarios:

En C++ hay dos tipos de comentarios:

1.- Comentarios delimitados entre los

1.- Comentarios delimitados entre los

símbolos

símbolos

/* Esto es un comentario el compilador

/* Esto es un comentario el compilador

hará caso omiso de este texto*/

hará caso omiso de este texto*/

El comentario puede ocupar más de una

El comentario puede ocupar más de una

(24)

2.- Comentarios iniciados con los

2.- Comentarios iniciados con los

símbolos //

símbolos //

En ellos se ignora todo el texto hasta

En ellos se ignora todo el texto hasta

el final de línea. Ejemplo:

el final de línea. Ejemplo:

int

int

x=5;

x=5;

//Comentario en la

//Comentario en la

misma línea

misma línea

(25)

Palabras Reservadas

Palabras Reservadas

Se llaman así a palabras que en C++ tienen

Se llaman así a palabras que en C++ tienen

un significado concreto para los

un significado concreto para los

compiladores.

compiladores.

No se pueden por tanto usar esas palabras

No se pueden por tanto usar esas palabras

para poner nombre a variables, constantes,

para poner nombre a variables, constantes,

funciones o clases definidas por el

funciones o clases definidas por el

programador.

programador.

La lista de palabras reservadas proceden

La lista de palabras reservadas proceden

(26)

Palabras reservadas ©

(27)

Palabras reservadas (C+

Palabras reservadas (C+

+)

(28)

Identificadores

Identificadores

 Son los nombres que damos a las variables y Son los nombres que damos a las variables y

a las funciones de C. Lógicamente no pueden a las funciones de C. Lógicamente no pueden coincidir con las palabras reservadas.

coincidir con las palabras reservadas.

 Además puesto que C distingue entre las Además puesto que C distingue entre las

mayúsculas y las minúsculas, hay que tener mayúsculas y las minúsculas, hay que tener cuidado de usar siempre las minúsculas y cuidado de usar siempre las minúsculas y mayúsculas de la misma forma es decir: mayúsculas de la misma forma es decir:

nombre, Nombre

nombre, Nombre y y NOMBRE NOMBRE

(29)

Reglas de los

Reglas de los

identificadores

identificadores

Deben comenzar por una letra o por el

Deben comenzar por una letra o por el

signo de subrayado (aunque comenzar

signo de subrayado (aunque comenzar

por subrayado se suele reservar para

por subrayado se suele reservar para

identificadores de funciones

identificadores de funciones

especiales del sistema).

especiales del sistema).

Sólo se admiten letras (del abecedario

Sólo se admiten letras (del abecedario

inglés, no se admite ni la ñ ni la tilde

inglés, no se admite ni la ñ ni la tilde

ni la diéresis), números y el carácter

ni la diéresis), números y el carácter

(30)

Líneas de preprocesador

Líneas de preprocesador

Las sentencias que comienzan con el

Las sentencias que comienzan con el

símbolo

símbolo

#

#

y que no finalizan con el punto

y que no finalizan con el punto

y coma son líneas de preprocesador (o

y coma son líneas de preprocesador (o

directivas de compilación).

directivas de compilación).

Son instrucciones que serán traducidas a

Son instrucciones que serán traducidas a

código fuente antes de iniciar el proceso

código fuente antes de iniciar el proceso

de compilado.

de compilado.

La más utilizada es

La más utilizada es

#include q

#include q

ue ya se

ue ya se

Referencias

Documento similar

C++: Es un lenguaje de programación (LP), diseñado a principios de los años 1980, por Bjarne Stroustrup, como extensión del lenguaje de programación C, sus principales

El desarrollo de la estrategia creativa, es decir, de los diseños, de acuerdo al problema que se desea resolver están integrados por elementos de significación(semiológicos),

Se decidió emplear como lenguaje de programación PHP v5.3.0 por todas las ventajas antes vistas y por ser además el lenguaje que utiliza Drupal; como sistema gestor de base de

El rango de valores de una variable float es mucho ma- yor, y si el valor de la variable es mayor que el valor máximo del do- minio de los enteros de 4 bytes, entonces el resultado

cuatro alumnos del primer ciclo de primaria, un programa para el fomento de la autoestima. Por tanto, la investigación cuenta con un grupo experimental, al cual

− Un manipulador de menú, si el ítem tiene el flag MF_POPUP, en éste caso hay que hacer un casting a (UINT). − O puede ser cero, si se trata de un separador. El último

Para la programación del PIC se ha usado un compilador en C para PICs PCWH CCS versión 4.104, cuya potencia del lenguaje C se aprovecha para compilarlo a lenguaje máquina

En este capítulo de la memoria se mostrarán los pasos a realizar para el desarrollo de un lenguaje de componentes, comenzando con el desarrollo de la sintaxis abstracta (meta-modelo)