Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Declarar variables Locales en Delphi?? (https://www.clubdelphi.com/foros/showthread.php?t=23161)

JELIRM 08-07-2005 01:18:38

Declarar variables Locales en Delphi??
 
Realmente esto no me es un problema, es solo que siempre me ha inquietado . Pongamos por ejemplo que tengo un Form1 de X aplicación y la ejecuto, no me genera ningun error; pero en la ventanita de el compilador de Delphi me aparece el siguiente mensaje:

[Warning] Form1.pas(111):For loop contro variable must be simple local variable
[Warning] Form1.pas(121):For loop contro variable must be simple local variable
........y asi sucesivamente segun las variables declaradas>>>>

esto es por cada variable que yo declaro en el segmento de Var. Pondre de ejemplo el codigo de abajo para que veaís en que parte declaro mis variables. He intentado declararlas en procedimientos pero me da error, solo me permite donde por defecto viene Var que es al principio de un formulario.

unit Principal;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, DBTables, StdCtrls, Buttons, Grids, DBGrids, QRExport, Menus,
ExtCtrls;

type
TForm1 = class(TForm)
DBGrid1: TDBGrid;
DataSource1: TDataSource;
Table1: TTable;
OpenDialog1: TOpenDialog;
Table1TC: TStringField;
procedure EliminarProcesoCpd1Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;


var

Archivo:TextFile;
Texto:String;
Verifica:String;
VerificaArchivo:String;
VerificaCpd:String;
VerificaFlag:String;
Monto:String;
MontoNum:double;
I:Integer;
Comision:String;


Alguien puede decirme como declaro las Variables Locales?? y si el no declararlas como locales hace que mi aplicacion se vuelva mas lenta de lo que deberia ser?? o si simplemente lo ignoro...


Gracias de Antemano

Las Caidas te hacen aprender a caminar

--Saludos--

vtdeleon 08-07-2005 01:52:19

Puedes declarar las variable locale en la seccion de Private
:pNo soy bueno en teorias y explicaciones, pero...
Llevandome de la advertencia que te muestra el compilador, puedo decir que estas usando una variable para realizar un BUCLE (for, While o Repeat) y esta variable puede utilizarse en cualquier procedimiento y/o funcion. Para esto mejor usa Variable local en el procedimiento o funcion
Código Delphi [-]
procedure .....;
var
  n:integer;
begin
  for n:=0 to 10 do
    n:=n+1;
end;

lucasarts_18 08-07-2005 02:05:36

Hola:

Las variables que son declaradas en la parte Private son para uso exclusivo de dicha Unit, es decir no podrá ser referenciada de otra Unit.

Saludos.

mamcx 08-07-2005 04:49:47

Se nota que eres nuevo al lenguaje. Te recomiendo que busques un manual del lenguaje como tal...

Esta pagina me gusta http://www.delphibasics.co.uk/ aunque es en ingles. Hay manuales gratis como la Cara Oculta de Delphi 4... hay otros en este mismo foro y si le das buscar vas a encontrar material...

Neftali [Germán.Estévez] 08-07-2005 09:39:31

Cita:

Empezado por mamcx
...Se nota que eres nuevo al lenguaje...

Yo diría nuevo a la programación, porque el tema no es que sea exclusivo de Delphi...
Este capítulo también te puede servir, habla de ámbito y visibilidad de variables y constantes.
http://www.mailxmail.com/curso/infor.../capitulo5.htm

Crandel 08-07-2005 10:46:59

Las variables de control de los ciclos, es importante que lo declares dentro del mismo procedimiento o función tal como lo indico vtdeleon, dado que permite al compilador optimizar, acelerar el código.

A demás asegura que la variable no sea modificada en otra parte del código, y a diferencia de lo que parece no es un ahoro de memoria.

JELIRM 09-07-2005 01:22:54

Ok!!!
 
Realmente soy nuevo el Delphi es por eso que acudo a ud. para ayuda, quizas tendre unos 4 meses de estar con delphi, y venia de programar en Visal Basic.
De programar no soy tan nuevo tendre mis 4 años y como han de saber entre el lenguaje nativo Basic y Delphi son muy diferentes.Pero Gracias, por darme esos links para ver cosas basicas, aveces uno no hace caso a cosas pequeñas pero que son importantes, y como lo dije al principio del hilo me llamo la atencion el mensaje que me mostraba el compilador, como una advertencia...



Las Caidas te hacen aprender a caminar

--Saludos--


La franja horaria es GMT +2. Ahora son las 18:07:32.

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