elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  [Delphi] Error en acceder a una variable privada de una Clase.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Delphi] Error en acceder a una variable privada de una Clase.  (Leído 1,666 veces)
BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.148


I'Love...!¡.


Ver Perfil WWW
[Delphi] Error en acceder a una variable privada de una Clase.
« en: 24 Marzo 2012, 04:36 am »

Por que me marca error SIEMPRE cuando trato de dimensionar o acceder a la variable udtArray?

Código
  1.  
  2. type
  3.  TValue = record
  4.    iFlags: Integer;
  5.    fValue: real;
  6.  end;
  7.  
  8.  TArrayValue = Array Of TValue;
  9.  
  10.  TPila = class(TObject)
  11.  private
  12.    udtArray: TArrayValue; // Array Of TValue
  13.  public
  14.    constructor Create(); overload;
  15.    constructor Create(var oPila: TPila); overload;
  16.    procedure Push(udtVar: TValue); overload;
  17.    procedure Push(fValue: Real; iFlags: Integer); overload;
  18.    function Pop(): TValue;
  19.    function Count(): Integer;
  20.    function Get(Index: Integer): TValue;
  21.    procedure Invert();
  22.    procedure Clear();
  23.    procedure Clone(var oPila: TPila);
  24.  end;
  25.  
  26. implementation
  27.  
  28. constructor TPila.Create();
  29. begin
  30.  Self.Clear;
  31. end;
  32.  
  33. constructor TPila.Create(var oPila: TPila);
  34. begin
  35.  Self.Clone(oPila);
  36. end;
  37.  
  38. procedure TPila.Push(fValue: Real; iFlags: Integer);
  39. var
  40.  iLength: Integer;
  41.  iIndex: Integer;
  42. begin
  43.  iIndex := Self.Count;
  44.  iLength := (iIndex + 1);
  45.  SetLength(Self.udtArray, iLength);
  46.  udtArray[iIndex].iFlags := iFlags;
  47.  udtArray[iIndex].fValue := fValue;
  48. end;
  49.  
  50. procedure TPila.Push(udtVar: TValue);
  51. begin
  52.  Push(udtVar.fValue, udtVar.iFlags);
  53. end;
  54.  
  55. function TPila.Pop(): TValue;
  56. var
  57.  iNewLength: Integer;
  58.  udtRet: TValue;
  59. begin
  60.  if (Self.Count = 0) then begin
  61.    udtRet.iFlags := 0;
  62.    udtRet.fValue := 0;
  63.  end else begin
  64.    iNewLength := High(Self.udtArray);
  65.    udtRet := Self.udtArray[iNewLength];
  66.    SetLength(Self.udtArray, iNewLength);
  67.  end;
  68.  Result := udtRet;
  69. end;
  70.  
  71. function TPila.Count(): Integer;
  72. begin
  73.  Result := Length(Self.udtArray);
  74. end;
  75.  
  76. procedure TPila.Invert();
  77. var
  78.  i: Integer;
  79.  j: Integer;
  80. begin
  81.  if not (Count = 0) then begin
  82.    j := High(Self.udtArray);
  83.    for i:= Low(Self.udtArray) to (High(Self.udtArray) div 2) do begin
  84.      SwapFloat(Self.udtArray[i].fValue, Self.udtArray[j].fValue);
  85.      SwapInt(Self.udtArray[i].iFlags, Self.udtArray[j].iFlags);
  86.      j := (j - 1);
  87.    end;
  88.  end;
  89. end;
  90.  
  91. function TPila.Get(Index: Integer): TValue;
  92. var
  93.  udtRet: TValue;
  94. begin
  95.  if (Index < Self.Count) then begin
  96.    udtRet := Self.udtArray[Index];
  97.  end else begin
  98.    udtRet.iFlags := 0;
  99.    udtRet.fValue := 0;
  100.  end;
  101.  Result := udtRet;
  102. end;
  103.  
  104. procedure TPila.Clear();
  105. begin
  106.  SetLength(Self.udtArray, 0);
  107. end;
  108.  
  109. procedure TPila.Clone(var oPila: TPila);
  110. begin
  111.  oPila.udtArray := Self.udtArray;
  112. end;
  113.  


En línea

The Dark Shadow is my passion.
BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.148


I'Love...!¡.


Ver Perfil WWW
Re: [Delphi] Error en acceder a una variable privada de una Clase.
« Respuesta #1 en: 24 Marzo 2012, 04:46 am »

jejejeje... Perdón Error Mio al crear la clase... tenia que hacer esto:

oPila := TPila.Create;

Dulces Lunas!¡.


En línea

The Dark Shadow is my passion.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Acceder por VNC de una red publica a una privada
Redes
LEEC_123 1 3,430 Último mensaje 16 Enero 2011, 17:50 pm
por y0g-s0th0th
Acceder a una variable privada de una clase desde otra clase
Programación C/C++
Alvaro093 4 26,319 Último mensaje 27 Enero 2012, 09:46 am
por wachi
Problema con variable privada
Programación C/C++
BeLGaRioN 2 1,491 Último mensaje 30 Enero 2012, 19:45 pm
por BeLGaRioN
No hay salida a la red con ip privada clase a
GNU/Linux
unusuario 9 2,719 Último mensaje 10 Mayo 2016, 18:34 pm
por unusuario
Acceder a una variable de una clase de un modulo python desde el exterior
Scripting
Drakaris 0 266 Último mensaje 12 Septiembre 2021, 23:36 pm
por Drakaris
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines