//+------------------------------------------------------------------+
//| MyTree.mq5 |
//| Copyright 2010, MetaQuotes Software Corp. |
//| http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "2010, MetaQuotes Software Corp."
#property link "http://www.mql5.com"
//---
#include <Arrays\Tree.mqh>
#include "MyTreeNode.mqh"
//---
input int extCountedNodes = 100;
//+------------------------------------------------------------------+
//| Описываем класс CMyTree производный от CTree. |
//+------------------------------------------------------------------+
//| Класс CMyTree. |
//| Назначение: Построение и навигация двоичного дерева поиска. |
//+------------------------------------------------------------------+
class CMyTree : public CTree
{
public:
//--- методы поиска в дереве по данным пользователя
CMyTreeNode* FindByLong(long find_long);
//--- метод создания элемента дерева
virtual CTreeNode *CreateElement();
};
//---
CMyTree MyTree;
//+------------------------------------------------------------------+
//| Создание нового узла дерева. |
//| INPUT: нет. |
//| OUTPUT: указатель на новый узел дерева если ОК, либо NULL. |
//| REMARK: нет. |
//+------------------------------------------------------------------+
CTreeNode *CMyTree::CreateElement()
{
CMyTreeNode *node=new CMyTreeNode;
//---
return(node);
}
//+------------------------------------------------------------------+
//| Поиск элемента в списке по значению m_long. |
//| INPUT: find_long - искомое значение. |
//| OUTPUT: указатель найденного элемента списка, либо NULL. |