Teoria Edy C++

download Teoria Edy C++

If you can't read please download the document

  • date post

    01-Jul-2015
  • Category

    Documents

  • view

    197
  • download

    6

Embed Size (px)

Transcript of Teoria Edy C++

LIBRO 1 Indice. 1. Programacin orientada a objetos. Usando C++. Notacin Hngara. Secuencias de escape y de control : \n \t \a \\ \ Cdigo ASCII Equivalencias decimal hexadecimal octal - binario Tipos de Datos. Asignar un valor a una varible. Conversion de tipos en una operacin. o INTDOUBLE.

Operaciones con tipos de datos diferentes.

2.1. int 2.2. Uso de cadenas de caracteres. Char. 2.3. float y double. 2.4. void. 2.5. enum. 2.6. struct. 2.7. const. 2.8. typedef. 2.9. bool. 3. Apuntadores o punteros. Apuntadores a cadenas. Apuntador NULL.

Punteros a estructuras ( ->). Variables dinmicas con punteros - Memoria dinmica. o New, o delete.

4. Declaracines. Variables. Funciones. 5. Arreglos, Arrays o Matrices. Arreglos simples. Arreglos multidimensionales. Pasando arreglos a funciones. Librera Vector- Array. Librera Map Matrices asociativas. goto 6. Estructuras de Control. Proposiciones condicionales. If if-else if-else if- else if - else Switch. 7. Proposiciones iterativas. 7.1 for. 7.2 while. 7.3 Do. 8. Operadoredes. Operadores unuarios. Operador binario. Operadores lgicos. Operadores sobrecargados. Otros Operadores. # define Operador de preprocesador Creacin de macros.

1

La directiva "#include"

10. Funciones 10.1 Llamadas por valor y llamadas por referencia. Inline. Funciones en lnea. 11. Clases. Acceso a variables miembro mediante . o ->. Herencia. Clases Heredadas. Polimorfismo. Virtual. Clases y Estructuras Anidadas. Variables Miembro Funciones amigas o friendo. Template Plantillas. Constructores y destructores. Libreras. Organizacin de archivos Uso de libreras. Encabezado de Archivos .h Archivos fuente .cpp 16. Entrada y salida en C++ Entrada y salida de archivos Vocabulario.

Formatos.

2

1. Fundametos de la programacin orientada a objetos.La programacin orientada a objetos (OOP) se basa en la nocin referente a los objetos del mundo real para desarrollar aplicaciones. Tambin se pueden relacionar clases individuales en una jerarqua de clases. Los fundamentos de la OOP incluyen clases, objetos, mensajes, mtodos, herencia y polimorfismo. Una clase define una categora de objetos. Cada objeto es una instancia de una clase. Clases y objetos Un objeto comparte los mismos atributos y la misma funcionalidad con los dems objetos de la misma clase. Normalmente, un objeto tiene un estado nico, definido por los valores actuales de sus atributos. La funcionalidad de una clase determina las operaciones posibles para las instancias de esa clase. El C++ hace llamadas a los atributos de los datos miembro de la clase y a las operaciones de las funciones miembro de la clase. La clase encapsula los datos miembro y las funciones miembro. Si regresamos al ejemplo del reloj CASIO, los botones del reloj representan las funciones miembro de la clase de relojes CASIO y lo que aparece en la pantalla de los mismos representa un dato miembro. Puedo oprimir determinados botones para editar la fecha y la hora. En trminos de la OOP, las funciones miembro modifican el estado del objeto y cambian sus datos miembro. Herencia En los lenguajes orientados a objetos, se puede derivar una clase a partir de la otra. Con la herencia, la clase deriva (tambin llamada clase descendiente), hereda los datos miembro y funciones miembro de sus clases padre y ancestro Derivar una clase refina a la clase padre, pues le aade nuevos atributos y nuevas operaciones. La clase derivada declara, por lo general, nuevos datos miembro y nuevas funciones miembro heredadas cuando las operaciones de estas funciones no son adecuadas para la clase derivada. Para aplicar el concepto de herencia al reloj Data Bank de Casio, considere la siguiente situacin posible. Supongamos que el fabricante de relojes decide crear un reloj Data Comm de Casio, que proporcione las mismas caractersticas del Data Bank de CASIO, y adems, un timbre de aviso o alarma. En lugar de disear el nuevo modelo (esto es, la nueva clase en trminos de la OOP) a partir de cero, los ingenieros de CASIO comienzan con el diseo existente del Data Bank de Casio Y construyen el nuevo a partir de l. Quizs este proceso aada nuevos atributos y operaciones al diseo existente y modifique algunas operaciones existentes para que se ajusten al nuevo diseo. Por lo tanto, el modelo Data Comm de CASIO hereda los atributos y las operaciones del modelo Data Bank de CASIO. En trminos de la OOP, la clase de relojes Data Comm de CASIO es descendiente de la clase de relojes Data Bank de CASIO. Mensajes y mtodos La programacin orientada a objetos modela la interaccin con los objetos como eventos cuando son enviados mensajes a un objeto o entre objetos. El objeto que recibe un mensaje responde llamando al mtodo adecuado (esto es, a la funcin miembro en el C++). El mensaje es lo que se le hace a un objeto. El mtodo es la forma en que el objeto responde al mensaje recibido. Polimorfismo La caracterstica de polimorfismo de la OOP permite que las instancias de diferentes clases reaccionen de forma particular a un mensaje (o llamada a funcin, en trminos del C++). Por ejemplo, en una jerarqua de formas grficas (punto, lnea, cuadro, rectngulo, elipse, etc.) cada forma tiene la funcin Trazar, la cual est obligada a responder adecuadamente a una peticin para dibujar la forma. El polimorfismo permite que instancias de diferentes clases respondan a la misma funcin en formas que sean adecuadas para cada clase.

3

Sentencia. Es una declaracin simple, comando o clculo que termina con un unto y como. Ejemplo: char valriable=Hola;

4

Notacin Hungara. La notacin hngara es una serie de normas para escribir un programa.Variables. Prefijos en minsculas que se aaden a los nombres de las variables que indican su tipo. Tipos definidos. Las letras del prefijo estarn en mayscula. El resto del nombre indica, lo ms claramente posible, la funcin que realiza la variable o tipo. Prefijo Significado

ab by c

'array'.Booleano

ddw

BYTE o UCHAR (unsigned char) Carcter (un byte) 'char'. Para el tipo primitivo de carcter alfanumrico individual. 'double'. Para tipos numricos de alta precisin, como double o float.Entero largo de 32 bits sin signo (DOBLE WORD)

ef

gh i

'event'. Para eventos. 'funcin'. Slo la utilizaremos delante de funciones cuando se traten de funciones que se aadan como observadores de un evento (ya que usar esta notacin para cualquier mtodo o funcin sera bastante engorroso). 'delegated'. Para tipos delegados.Manipulador de 16 bits (HANDLE) Entero largo de 32 bits

llp lbl lpfn lpsz n

De 'lock'. Para objetos de control que nos faciliten el uso de exclusiones mutuas, candados y semforos.Puntero a entero largo de 32 bits

Objeto LabelPuntero largo a una funcin que devuelve un entero Puntero largo a una cadena terminada con cero

op pt rgb

'enum'. Para tipos enumerados. 'objeto'. Para objetos en general (no se debe usar la notacin hngara para distinguir entre tipos de objetos, salvo escasas excepciones).Puntero a entero de 16 bits Coordenadas (x, y) empaquetadas en un entero de 32 bits Valor de color RGB empaquetado en un entero de 32 bits

ssz

'string'. Para variables de tipo cadena de texto, ya sean nativos o arrays de char. Este tipo de datos es muy habitual en lenguajes sin lgica de punteros. Si se usara el objeto de tipo String en estos casos, acudiremos a este identificador en lugar de al o de objeto.Cadena terminada en cero

t txtu

'struct'. Similar al 'o' de objetos, ste se usara para variables de tipo struct en general (es decir, objetos de tipo primitivo). Cajas de textoSin signo (unsigned)

vw

'variable'. Para variables que adquieran diferentes tipos de valores. Normalmente slo acudiremos a esta opcin en lenguajes no tipados. La usaremos cuando no estemos seguros del tipo de valor que albergar una variable. Tambin puede valer para objetos que tengan un tipo genrico T.Entero corto de 16 bits sin signo (WORD)

y

'byte'. 5

Ejemplos: nContador: la variable es un entero que se usar como contador. szNombre: una cadena terminada con cero que almacena un nombre. bRespuesta: una variable booleana que almacena una respuesta. Ejemplos de tipos definidos por el API de Windows: UINT: entero sin signo. Windows redefine los enteros para asegurar que el tamao en bits es siempre el mismo para todas las variables del API. LRESULT: entero largo usado como valor de retorno. WPARAM: entero corto de 16 bits usado como parmetro. LPARAM: entero largo de 32 bits usado como parmetro. LPSTR: puntero largo a una cadena de caracteres. En el API de 32 bits no existen distinciones entre punteros largos y cortos, pero la nomenclatura se conserva por compatibilidad. LPCREATESTRUCT: puntero a una estructura CREATESTRUCT.

6

1.2 Secuencias de escape :

Escape Sequence \a \b \f \n \r \t \v \' \" \\ \? \ooo \xhh \xhhhh

RepresentsAlerta. 1 pitido de la cpu.

Bell (alert)

Backspace FormfeedPasar a la siguiente lnea inferior.New

line

Carriage returnEquivale al tabulador.Horizontal

tab

Vertical tab Single quotation markComillas dobles (El simbolo)Double

quotation mark

Diagonal invertida \ (El simbolo). Backslash

Literal question mark ASCII character in octal notation ASCII character in hexadecimal notation Unicode character in hexadecimal notation if this escape sequence is used in a widecharacter constant or a Unicode string literal. For example, WCHAR f = L'\x4e00' or WCHAR b[] = L"The Chinese character for one is \x4e00".

7

ASCII

8

9

Como usar este codigo. Ejemplo:

10

Equivalencias decimal hexadecimal octal - binario

Dec 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Dec 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 Dec 128 129 130 131 132 133