manual tecnico de listas enlazadas

Download Manual Tecnico de Listas Enlazadas

Post on 16-Nov-2014

437 views

Category:

Documents

8 download

Embed Size (px)

TRANSCRIPT

QUE ES LA PROGRAMACIN ORIENTADA A OBJETOS ?La POO es una nueva filosofa de programacin que se basa en la utilizacin de objetos. El objetivo de la POO no es sino la meta de cualquier modelo de programacin estructurada convencional: "imponer" una serie de normas de desarrollo que aseguren y faciliten la mantenibilidad y reusabilidad del cdigo.

Los mecanismos bsicos de la POO son: objetos, mensajes, mtodos y clases.Objetos. Un objeto es una entidad que tiene unos atributos particulares (datos) y unas formas de operar sobre ellos (los mtodos o funciones miembro). Es decir, un objeto incluye, por una parte una serie de operaciones que definen su comportamiento, y una serie de variables manipuladas por esas funciones que definen su estado. Por ejemplo, una ventana Windows contendr operaciones como "maximizar" y variables como "ancho" y "alto" de la ventana. Mensajes. En C++, un mensaje se corresponde con el nombre de uno de los mtodos de un objeto. Cuando se pasa un mensaje a un objeto, este responde ejecutando el cdigo de la funcin asociada. Mtodo. Un mtodo (funcin miembro) se implementa dentro de un objeto y determina como tiene que actuar el objeto cuando se produce el mensaje asociado. En C++ un mtodo se corresponde con la definicin de la funcin miembro del objeto. La estructura ms interna de un objeto est oculta, de tal manera que la nica conexin con el exterior son los mensajes

Las principales caractersticas de la POO son: abstraccin, encapsulamiento, herencia y polimorfismo:Abstraccin. Es el mecanismo de diseo en la POO. Nos permite extraer de un conjunto de entidades datos y comportamientos comunes para almacenarlos en clases. Encapsulamiento. Mediante esta tcnica conseguiremos que cada clase sea una caja negra, de tal manera que los objetos de esa clase se puedan manipular como unidades bsicas. Los detalles de la implementacin se encuentran dentro de la clase, mientras que desde el exterior, un objeto ser simplemente una entidad que responde a una serie de mensajes pblicos (tambin denominados interfaz de la clase). Herencia. Es el mecanismo que nos permite crear clases derivadas (especializacin) a partir de clases bases (generalizacin). Es decir, podramos tener la clase "Empleado" (clase base) y la clase "Vendedor" derivando de la anterior. Una librera de clases (como la MFC) no es ms que un conjunto de definiciones de clases interconectadas por mltiples relaciones de herencia. Polimorfismo. Esta caracterstica nos permite disponer de mltiples implementaciones de un mismo mtodo de clase, dependiendo de la clase en la que se realice. Es decir, podemos acceder a una variedad de mtodos distintos (con el mismo nombre) mediante el mismo mecanismo de acceso. En C++ el polimorfismo se consigue mediante la definicin de clases derivadas, funciones virtuales y el uso de punteros a objetos.

ESIME-ZACATENCO-ICE-IPN

Alarcn Garca Andrs. Guevara Jimnez Daniel. Ortega Velzquez Sofa.

Fecha de entrega: 26 de noviembre de 2009

Clases. Una clase es la definicin de un tipo de objetos. De esta manera, una clase "Empleado" representara todos los empleados de una empresa, mientras que un objeto de esa clase (tambin denominado instancia) representara a uno de esos empleados en particular.

Otros dos conceptos muy importantes en la POO son relativos a la creacin y destruccin de objetos. En lenguajes estructurados convencionales, cuando se define una variable se le reserva espacio en memoria y, si no se inicializa expresamente, se hace por defecto (por ejemplo, en C una variable global siempre se inicializa a 0, pero una automtica no, por lo que si no se inicializa expresamente su contenido inicial ser basura); por otra parte, cuando se destruye una variable (por que se abandona el mbito de su definicin - scope -) se libera la memoria que estaba ocupando. Si ahora hacemos el paralelismo obligado entre variables y objetos para los lenguajes POO nos daremos cuenta de que deben existir procedimientos especiales de construccin y destruccin de objetos. En concreto, cada clase tiene dos funciones miembro especiales denominadas constructor y destructor.

Constructor -> Funcin miembro que es automticamente invocada cada vez que se define un objeto, su objetivo es la inicializacin del mismo. Toma el mismo nombre que la clase, puede recibir parmetros y podemos tener varios constructores definidos. Destructor -> Funcin miembro invocada automticamente cada vez que se destruye un objeto. Su objetivo es realizar operaciones como liberacin de memoria, cerrar ficheros abiertos, etc. Toma el mismo nombre de la clase comenzado primero por el carcter "~", no toma parmetros y no admite la sobrecarga (slo puede existir uno en cada clase).

La directiva #include carga determinados Archivos denominados, Archivos de inclusin (include files), Archivos de cabecera (header files) o simplemente cabeceras, y los inserta en el cdigo fuente (en el punto de la directiva) que desde ese momento queda sustituida por el texto contenido en el fichero.

#DEFINEComo vimos, con la directiva #define se define un alias, es decir una sustitucin de texto. Esto, que usamos para definir constantes, se puede utilizar de la misma manera para definir macros. En efecto, podemos poner parmetros a esas sustituciones, que se comportan entonces como si de una pseudo-funcin se tratara.

LIBRERIASUna librera es un conjunto de recursos (algoritmos) prefabricados, que pueden ser utilizados por el programador para realizar determinadas operaciones

PUNTEROS 'VOID'Un puntero puede apuntar a un objeto de cualquier tipo, predefinido por el lenguaje o definido por el usuario. 'Void' es el nombre de un tipo, pero su uso esta sujeto a mayores restricciones respecto a otros tipos. El termino 'void' puede ser usado como tipo de una funcion o de un puntero, pero no para declarar un objeto. Las declaraciones posibles de tipo void, en C y C++

ESIME-ZACATENCO-ICE-IPN

Alarcn Garca Andrs. Guevara Jimnez Daniel. Ortega Velzquez Sofa.

Fecha de entrega: 26 de noviembre de 2009

ARCHIVOS

PROGRAMA#include #include #include #include #include #include #include #define max_prod 20 #define CAPTURA cant //AQUI EMPIEZAN LAS LLAMADAS DE FUNCIONES DE USUARIO O FUNCIONES MIEMBRO void marco(); void esime(); void marcprin(); void fichatecnica(); void pilasycolas(); void minisuper(); void libreria(); void opcion1(); void opcion2(); void opcion3(); void opcion4(); void opcion5(); void archivos(); void titu(); //ESTA CLASE CONTROLA PARTE DE LA FUNCION LIBRERIA class fecha { int dia; char*mes; int anio; }; class biblioteca:public fecha { private: char *clasif; char *titulo; char *autor; char *editorial; int pags; char *edicion; char *ISBN; ESIME-ZACATENCO-ICE-IPN Alarcn Garca Andrs. Guevara Jimnez Daniel. Ortega Velzquez Sofa.

Fecha de entrega: 26 de noviembre de 2009

float precio; public: void leer(); void imprime(int); };biblioteca *libro; //TERMINA CLASE QUE CONTROLA PARTE DE LA FUNCION LIBRERIA //AQUI TERMINAN LAS LLAMADAS DE FUNCIONES DE USUARIO O FUNCIONES MIEMBRO /*ESTE ES MAIN PRINCIPAL DEL PROGRAMA EN ESTE ESTAN DECLARADAS LAS LLAMADAS DE FUNCIONES MIEMBRO O DE USUARIO ASI COMO EL MENU PRINCIPAL*/ main() { int opcion, opc; clrscr(); do{ clrscr(); marcprin(); marco(); //ESTE CODIGO MUESTRA EN PANTALLA LAS OPCIONES DEL MENU gotoxy(26,7);cout

Recommended

View more >