Discusión sobre el artículo "Recetas de MQL5 - implementamos el array asociativo o el diccionario para el acceso rápido a los datos"

 

Artículo publicado Recetas de MQL5 - implementamos el array asociativo o el diccionario para el acceso rápido a los datos:

En este artículo se describe un algoritmo especial que permite acceder de manera eficaz a los elementos usando su clave única. Como clave se puede utilizar cualquier tipo básico de datos, por ejemplo, las cadenas o variables de números enteros. Este contenedor de datos suelen llamarlo el diccionario o array asociativo. La solución de muchas tareas con su ayuda resulta más simple y eficaz.

Este artículo describe una clase cómoda para almacenar la información: array asociativo o diccionario. Gracias a esta clase se puede acceder a la información por su clave.

El array asociativo recuerda un array común, pero en vez del índice utiliza una clave única, por ejemplo, la enumeración ENUM_TIMEFRAMES o cualquier texto. No importa qué clave es, lo importante es que esta clave sea única. Este algoritmo de almacenamiento de datos simplifica considerablemente muchos aspectos de programación.

Por ejemplo, la función para recibir el código del error y mostrar el equivalente textual de este error podría tener el siguiente aspecto:

//+---------------------------------------------------------------------+
//| Muestra en el terminal la descripción del error recibido.           |
//| Si el identificador del error se desconoce, muestra "Unknown error" |
//+---------------------------------------------------------------------+
void PrintError(int error)
 {
   Dictionary dict;
   CStringNode* node = dict.GetObjectByKey(error);
   if(node != NULL)
      printf(node.Value());
   else
      printf("Unknown error");
 }

Más tarde analizaremos la específica de este código.

Antes de pasar directamente a la descripción de la lógica interna del array asociativo, vamos a considerar con detalles dos modos principales de almacenamiento de datos: se trata de los arrays y de las listas. Nuestro diccionario va a basarse precisamente en estos dos tipos de datos, por eso tenemos que comprender muy bien las características específicas de su funcionamiento. El capítulo 1 está destinado a la descripción de los tipos de datos. El capítulo 2 describe el array asociativo y el modo de trabajo con él.

Autor: Vasiliy Sokolov

Razón de la queja: