Pascal/Turbo Pascal - Creando Unidades ¿Voy bien?

 
Vista:

Creando Unidades ¿Voy bien?

Publicado por Pascual (94 intervenciones) el 01/03/2005 21:42:21
Quiero crear una unidad en Turbo Pascal 7.0 que contenga las operaciones que se pueden realizar con archivos binarios de tipo simple (enteros o caracteres). ¿Voy por buen camino?.

UNIT bin
VAR
arch1: FILE of integer;
arch2: FILE of char;
identificador: string;
INTERFACE
USES Crt;
PROCEDURE Crear (arch1,identificador);
PROCEDURE Crear (arch2,identificador);
PROCEDURE Abrir (arch1,identificador);
PROCEDURE Abrir (arch2,identificador);
PROCEDURE Escribir (arch1,lista,i);
PROCEDURE Escribir (arch2,lista,i);
PROCEDURE Leer (arch1,lista,i);
PROCEDURE Leer (arch2,lista,i);
PROCEDURE Escribeln (arch1,lista);
PROCEDURE Escribeln (arch2,lista);
PROCEDURE Leerln (arch1,lista);
PROCEDURE Leerln (arch2,lista);
PROCEDURE Cerrar (arch1);
PROCEDURE Cerrar (arch2);
PROCEDURE Renombra (arch1,nomnuevo);
PROCEDURE Renombra (arch2,nomnuevo);
PROCEDURE Buscar (arch1,lista,i);
PROCEDURE Buscar (arch2,lista,i);
PROCEDURE Longitud (arch1);
PROCEDURE Longitud (arch2);
PROCEDURE Borrar (arch1);
PROCEDURE Borrar (arch2);
IMPLEMENTATION
PROCEDURE Crear (arch1,identificacior);
BEGIN
Assign (arch1,identificador);
END;
PROCEDURE Crear (arch2,identificador);
BEGIN
Assign (arch2,identificador);
END;
PROCEDURE Abrir (arch1,identificador);
BEGIN
Crear (arch1,identificador);
Reset (arch1);
END;
.
.
.
.
{Aquí seguría implementando cada procedure}
BEGIN
¿Qué he de hacer aquí?.
END.

Creo que no estoy muy perdido. ¿Se haría así?. Gracias.

PD: Aprobé Programación :) por fin gracias foro :).
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Creando Unidades ¿Voy bien?

Publicado por Hurricane (39 intervenciones) el 01/03/2005 22:06:19
Un Ejemplo:

Unit Math;

{* Entre el "Unit" y el "Interface" no debe ir nada *}
Interface

{* Todo lo que definas entre "Interface" e "implementation" será *}
{* considerado de tipo Global; es decir, cualquier programa/Unidad *}
{* que incluye esta libería, podrá ocupar lo definido aquí *}
Type
TComplex = Record
NReal: Real;
NImaginario: Integer;
End; {TComplex}

Function Min(Num1, Num2 :LongInt): LongInt;
Function Max(Num1, Num2 :LongInt): LongInt;

Implementation
{* Todo lo definido a partir de aquí, será considerado de uso exclusivo *}
{* de la libería, a no ser que esté especificado como global en el *}
{* cuerpo anterior *}

{* Retorna el Nº menor entre dos números enteros *}
Function Min(Num1, Num2 :LongInt): LongInt;
Begin
If (Num1>Num2) then Num1 := Num2;
Min := Num1;
End; {Min}

{* Retorna el Nº mayor entre dos números enteros *}
Function Max(Num1, Num2 :LongInt): LongInt;
Begin
If (Num1<Num2) then Num1 := Num2;
Max := Num1;
End; {Max}

End. {Unit Math}

Espero que te haya servido el ejemplo. Saludos ;-)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar