El evento _get: Recorrer colecciones como si fueran un array
Esta semana se me ha planteado un pequeño problema:
Tenia una colección (collection ) la cual loa tenia que recorrer de una forma sencilla, usando un bucle, por ejemplo un for ... next.
El caso,es que una colección, no se puede recorrer, ya que solo te devuelve valores cuando metes una llave (la Key).
Bueno pues se me ha ocurrido usar el evento _get en una nueva clase, que la he llamado MejoradaColeccion. Este evento ocurre cuando se le llama al objeto pasando le entre corchetes algo (un numero, una cadena o lo que sea).
Programado seria asi:
-
-
Lo interesante que a la hora de usarlo, puedo hacerlo de esta dos maneras:
c[2] ' usando un numero
c["sol"] ' usando una llave de la colección (Key)
Y las dos las admite!!!
Os dejo aqui el código completo y un ejemplo.
Código de la clase MejoraColección
-
-
Fmain: programa ejemplo para usarlo
-
-
Para más información:
http://gambaswiki.org/wiki/comp/gb/collection?l=es