Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #6  
Antiguo 15-03-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Partamos desde el principio.

Un procedimiento (procedure) es una forma de agrupar varias sentencias (órdenes) bajo un nombre. En princpio no devuelve ningún valor después de su ejecución.

Una función es un procedimiento que devuelve un valor como resultado de la ejecución de esas sentencias que agrupa.

Lo que viene después de la palabra "function" es el nombre que le queremos dar, y después tiene opcionalmente unos parámetros (valores de entrada que le podemos pasar a ese grupo de sentencias). Normalmente se define así:
Código Delphi [-]

function DameUnDouble: double;

// o bien dándole parámetros:
function AreaTriangulo(base : double; altura:double):double;

En el primer caso, el tipo de valor que debe devolver se especifica después de los dos puntos ":" (double es un número en coma flotante, que puede tener decimales, vamos).

El segundo caso es más complejo, le decimos esa función va a recibir dos valores. A un valor le llamaremos "base" y al otro "altura". Podrían ser cada uno de un tipo diferente, pero ahora nos conviene que ambos sean de tipo "double".

Toda función debe devolver un valor, y para ello puede utilizarse dos nomenclaturas totalmente equivalentes:
Código Delphi [-]
function DameUnDouble: double;
begin 
  Result := 3.2;
end;

function DameUnDouble:double;
begin
   DameUnDouble:= 3.2;
end;

Se usa el nombre de la propia función asignándole un valor, o bien la palabra "Result" que quizás es más intuitiva y que es lo que normalmente se usa.

Para ejecutar un procedimiento o función basta usar su nombre y darle los parámetros de entrada si los tiene, en el Onclic de un botón podemos poner:
Código Delphi [-]
procedure TForm1.ButtonClick(Sender:TObject);
var area :double;
begin
   DameUnDouble;
   area := AreaTriangulo(40,50);
   showMessage('el area es ' + floattostr(area));
end;
vale, lo he complicado usando dos funciones no explicadas, la ayuda de delphi puede aclararte algo sobre ellas. Ya va siendo hora que acudas a ella, será tu mejor aliado.

Ahora dale una vueltecita a la función de Marcos y quizás la comprendas mejor.

CTRL + SHIFT + C es lo que se llama "class completion", una mejora que tiene el IDE de delphi para ahorrarnos teclear código. Lo que hace es leer la declaración de nuestra clase y crear el esqueleto de dicha clase en la parte implementation.
Un ejemplo escribe esto en tu delphi:
Código Delphi [-]
type TForm1 = Class(TForm)
  public
     procedure Unproc;
     function AreaTriangulo(base:double; altura:double):double;
     procedure Dos;
     procedure Tres;
end;
y ahora pulsa la combinación de teclas, ve a la parte de abajo después de "implementation" verás pura magia .


Offtopic: mmm esto bien podría ser un wiki del estilo de ixMike jeje.

Saludos.
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.

Última edición por Lepe fecha: 15-03-2008 a las 23:30:06.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Programa para generar ayuda en chm o uso alternativo de pdf Nasca Varios 6 11-09-2007 14:00:29
Editor WYSIWYG básico para Delphi nachopro Varios 3 13-08-2007 18:42:36
Quiero encontrar un programa que me permita..... SerPan Tablas planas 5 04-07-2007 23:26:09
Ayuda En Login Y Pass Para Ingresar En un programa creado en Delphi Solojuegospc.tk Conexión con bases de datos 8 07-07-2005 03:18:28
¿ayuda para un programa para el msn kaiser_robert Internet 1 15-06-2005 20:52:07


La franja horaria es GMT +2. Ahora son las 17:35:14.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi