next up previous
Next: Asignación Dinámica de Memoria Up: Nuevas Facilidades del Fortran Previous: Tipos de Datos Derivados

Módulos

Los módulos u objetos son una colección de estructuras de datos que se les asocia las funciones y operadores que son capaces de manipular los datos contenidos en dichas estructuras. Las ventajas fundamentales del desarrollo de software mediante el uso de módulos son: facilita las pruebas y depuración del código de cada módulo por separado, y permite el uso de código previamente escrito mediante una interfaz bien definida.

    MODULE modulo_punto
      TYPE punto                       !Definicion del tipo punto
        REAL :: x,y
      END TYPE
      INTERFACE OPERATOR(-)     ! Interfaz del nuevo operador resta
        FUNCTION resta_puntos(p1,p2)
          TYPE(punto) :: resta_puntos, p1, p2
        END FUNCTION
      END INTERFACE
            ...
      CONTAINS
        FUNCTION resta_puntos(p1,p2)    ! Funcion que resta dos puntos
          TYPE(punto) : resta_puntos, p1, p2
          resta_puntos%x = p1%x - p2%x  ! x = x1 - x2
          resta_puntos%y = p1%y - p2%y  ! y = y1 - y2
        END FUNCTION resta_puntos
    END MODULE modulo_punto

El módulo esta conformado por dos partes, la primera contiene las definiciones de tipos, las declaraciones de variables, las interfaces, las funciones generales y los datos globales. La segunda parte, que se encuentra luego del la palabra CONTAINS, tiene los procedimientos que solamente pueden ser utilizados atrevés de las interfaces dadas.

Los módulos pueden ser utilizados en un código fuente si se incluye la instrucción USE.

    USE modulo_punto



Kay A. Tucci K.
Tue Apr 13 17:20:44 GMT-0400 1999