Comunidad Gambas-es
Tipo Variant, Variant[] ¿ es posible pasar de el ? - Versión para impresión

+- Comunidad Gambas-es (https://gambas-es.org)
+-- Foro: Gambas (https://gambas-es.org/forum-3.html)
+--- Foro: General (https://gambas-es.org/forum-4.html)
+--- Tema: Tipo Variant, Variant[] ¿ es posible pasar de el ? (/thread-1456.html)



Tipo Variant, Variant[] ¿ es posible pasar de el ? - Shell - 20-07-2023

Buenas!.

No sé me ocurre otra cosa que usar una clase. No suelo usar estructuras y creo que a estas alturas ya no son recomendables.
Recuerdo los tipos definidos de Visual Basic. ( que es una estructura, vamos).

Estoy tratando con un array de colecciones. Y lógicamente no tengo más remedio que usar un array tipo Variant[]. ( Temporalmente ).

Ejemplo, usando una función para detectar las colisiones de los misiles con la nave del jugador.

Código:
Public Sub Colision(nave As Rect, vmisiles As Variant[]) As Boolean

  Dim cmisil As Collection

  For Each cmisil In vmisiles
    If nave.Intersection(cmisil["rect"]) Then Return True
  Next
  Return False

End

Saludos


RE: Tipo Variant, Variant[] ¿ es posible pasar de el ? - Harpo - 21-07-2023

La verdad es que no se me había ocurrido nunca usar un array de Variant para guardar colecciones, uso un array de colecciones:
Código:
   Dim aMisiles As Collection[]

O en su defecto una coleccion donde almaceno colecciones:
Código:
   Dim cMisiles As New Collection
   Dim cMisil As New Collection

   cMisiles.Add(cMisil, "Misil1")

Un saludo, Harpo.


RE: Tipo Variant, Variant[] ¿ es posible pasar de el ? - Shordi - 21-07-2023

Las dos posibilidades he usado, según interesara al momento. Las dos funcionan. Big Grin Big Grin


RE: Tipo Variant, Variant[] ¿ es posible pasar de el ? - Shell - 23-07-2023

(21-07-2023, 17:37)Harpo escribió: La verdad es que no se me había ocurrido nunca usar un array de Variant para guardar colecciones, uso un array de colecciones:
(21-07-2023, 19:12)Shordi escribió: Las dos posibilidades he usado, según interesara al momento. Las dos funcionan


Pues si, no lo había puesto en práctica, pero con el array de colecciones va perfecto.

Saludos