이 문서에서는 고유 키로 요소에 액세스할 수 있는 특수 알고리즘에 대해 설명합니다. 모든 기본 데이터 유형을 키로 사용할 수 있습니다. 예를 들어 문자열이나 정수 변수로 나타낼 수 있습니다. 이러한 데이터 컨테이너는 일반적으로 사전 또는 연관 배열이라고 합니다. 보다 쉽고 효율적인 문제 해결 방법을 제공합니다.
이 글에서는 정보의 편리한 저장을 위한 클래스, 즉 연관 배열 또는 사전에 대해 설명합니다. 이 클래스를 사용하면 키를 통해 정보에 액세스할 수 있습니다.
연관 배열은 일반 배열과 유사합니다. 그러나 인덱스 대신 ENUM_TIMEFRAMES 열거 또는 일부 텍스트와 같은 고유 키를 사용합니다. 키를 나타내는 것은 중요하지 않습니다. 중요한 것은 키의 고유성입니다. 이 데이터 저장 알고리즘은 많은 프로그래밍 측면을 크게 단순화합니다.
예를 들어, 오류 코드를 받아 오류에 해당하는 텍스트를 인쇄하는 함수는 다음과 같을 수 있습니다.
//+------------------------------------------------------------------+//| Displays the error description in the terminal. |//| Displays "Unknown error" if error id is unknown |//+------------------------------------------------------------------+void PrintError(int error)
{
Dictionary dict;
CStringNode* node = dict.GetObjectByKey(error);
if(node != NULL)
printf(node.Value());
elseprintf("Unknown error");
}
-->
이 코드의 특정 기능은 나중에 살펴보겠습니다.
연관 배열 내부 논리에 대한 직접적인 설명을 다루기 전에 데이터 저장의 두 가지 주요 방법인 배열과 목록에 대한 세부 사항을 고려할 것입니다. 사전은 이 두 가지 데이터 유형을 기반으로 하므로 특정 기능을 잘 이해해야 합니다. 1장은 데이터 유형에 대한 설명입니다. 두 번째 장은 연관 배열과 그것으로 작업하는 방법에 대한 설명에 전념합니다.
새로운 기고글 MQL5 Cookbook: 빠른 데이터 액세스를 위한 연관 배열 또는 사전 구현 가 게재되었습니다:
이 문서에서는 고유 키로 요소에 액세스할 수 있는 특수 알고리즘에 대해 설명합니다. 모든 기본 데이터 유형을 키로 사용할 수 있습니다. 예를 들어 문자열이나 정수 변수로 나타낼 수 있습니다. 이러한 데이터 컨테이너는 일반적으로 사전 또는 연관 배열이라고 합니다. 보다 쉽고 효율적인 문제 해결 방법을 제공합니다.
이 글에서는 정보의 편리한 저장을 위한 클래스, 즉 연관 배열 또는 사전에 대해 설명합니다. 이 클래스를 사용하면 키를 통해 정보에 액세스할 수 있습니다.
연관 배열은 일반 배열과 유사합니다. 그러나 인덱스 대신 ENUM_TIMEFRAMES 열거 또는 일부 텍스트와 같은 고유 키를 사용합니다. 키를 나타내는 것은 중요하지 않습니다. 중요한 것은 키의 고유성입니다. 이 데이터 저장 알고리즘은 많은 프로그래밍 측면을 크게 단순화합니다.
예를 들어, 오류 코드를 받아 오류에 해당하는 텍스트를 인쇄하는 함수는 다음과 같을 수 있습니다.
-->이 코드의 특정 기능은 나중에 살펴보겠습니다.
연관 배열 내부 논리에 대한 직접적인 설명을 다루기 전에 데이터 저장의 두 가지 주요 방법인 배열과 목록에 대한 세부 사항을 고려할 것입니다. 사전은 이 두 가지 데이터 유형을 기반으로 하므로 특정 기능을 잘 이해해야 합니다. 1장은 데이터 유형에 대한 설명입니다. 두 번째 장은 연관 배열과 그것으로 작업하는 방법에 대한 설명에 전념합니다.
작성자: Vasiliy Sokolov