Programación General > ADA

 Problema Con Herencia Y Polimorfismos

(1/1)

uniross:
Buenas tardes antes que nada.

El problema que se me plantea es el siguiente:

Se pretende implementar un tad para representar información sobre estudiantes. Los estudiantes tendrán los atributos y operaciones básicas del tipo Persona más una lista de asignaturas y las operaciones para gestionarla. La lista de asignaturas de un estudiante se implementará usando un contenedor lineal secuencial limitado en tamaño que también se desarrollará en esta práctica.

La cuestion es que tengo otro tipo, el tipo estudiantes que es un Tipo de datos derivado de Persona

El tema es que me da el error "The name does not resolve to a subtype mark, Continuing" cuando en el codigo intento enlazar parametros con los tipos "estudiantes" y con "fechas" y "asignaturas" que estan en otro dos ficheros, los cuales conecto mediante "librerias".

Pongo el código para ver si alguno sabe a que puede deberse. Gracias de antemano Smile

Paquete extension Personas

--- Código: Text ---with personas,asignaturas,fechas;use Personas,asignaturas,fechas;generic    tamanio :positive;package personas.estudiante is private      procedure añadir_asignatura (asig: in out asignaturas; alum: in estudiante);   procedure poner_nota (Alum: in out estudiante; codigo: in positive; nota: in natural; fech: in fechas);   function ver_asignatura (Alum: estudiante; codigo: positive) return asignaturas;   function superadas (Alum: estudiante) return natural;   function No_superadas (Alum: estudiante) return natural;    no_matriculado,ya_existe_asig,muchas_asignaturas: exception; private      type estudiante is new Personas; end personas.estudiante; 
Paquete personas


--- Código: Text ---with Ada.Strings.Unbounded;use  Ada.Strings.Unbounded;package Personas is   type Persona is tagged private;      -- Tipo base para representar personas.    procedure Inicializar(            P: out Persona;            DNI: in Positive;            N, A1, A2: Unbounded_String         );      -- Da un valor a una variable de tipo persona.    function DNI(P: in Persona) return Positive;      -- Devuelve el DNI de una persona.   function Nombre(P: in Persona) return Unbounded_String;      -- Devuelve el nombre de pila de una persona.   function Primer_Apellido(P: in Persona) return Unbounded_String;      -- Devuelve el primer apellido de una persona.   function Segundo_Apellido(P: in Persona) return Unbounded_String;      -- Devuelve el segundo apellido de una persona.   function Nombre_Completo(P: in Persona) return Unbounded_String;      -- Devuelve el nombre de una persona, en el fomato:      -- <Primer_Apellido Segundo_Apellido, Nombre> private   -- Estructura de representación del tipo Persona   type Persona is tagged record      DNI: Positive;      Nombre: Unbounded_String;      Primer_Apellido: Unbounded_String;      Segundo_Apellido: Unbounded_String;   end record;end Personas; 
Gracias nuevamente :)

Navegación

[0] Índice de Mensajes

Ir a la versión completa