Алгоритмы, методы решений, сравнение их производительности - страница 19

 
Alexandr Andreev:

понятно о тикетах речи не было

Нет. Шла речь о порядковом номере сделки.
 
Реter Konow:
Нет. Шла речь о порядковом номере сделки.

в вашем коде нулевой нулевой индекс пустой - не хорошо

 
Alexandr Andreev:


все же советую начинать усложнять код всякими примочками типо шаблонных функций

В данной задаче, не вижу в этом необходимости. Это неизбежно снизит эффективность конкретного решения.

В других задачах возможно, в этом есть необходимость.

Не буду отрицать.

 
Реter Konow:

Для записи тикетов можно сделать параллельный массив рядом. 

Или несколько параллельных массивов для записи остальных данных кажого ордера.


"Потому что нельзя быть на свете красивой такой..."

Гениально.

 
Alexandr Andreev:

в вашем коде нулевой нулевой индекс пустой - не хорошо

Почему нулевой?

 for(int a1 =  0; a1 < Random_orders_of_strategy; a1++)
   {
    int this_magic = MathRand();
    //----------------------------
    order_number++;
    //---------------------------------
    //Записываем магик в массив после прибавлениея ячейки.
    //---------------------------------
    ArrayResize(All_magics,order_number);
    All_magics[order_number - 1] = this_magic;//  <- Вот здесь.
    //---------------------------------
   }
 
Реter Konow:

Почему нулевой?

Это Ваш же код
int    All_magics[];
int    Random_orders_of_strategy;
//+------------------------------------------------------------------+ 

template<typename T> 
   void ArrayAdd(T &m[], T& a)    {m[ArrayResize(m,ArraySize(m)+1,100)-1)=a;}
   
void Trading()
{
 Random_orders_of_strategy = MathRand();
 //----------------------------------------
 //Имитируем открытие неопределенного количества ордеров стратегии.
 //----------------------------------------
 for(int a1 =  0; a1 < Random_orders_of_strategy; a1++)
   {
    int this_magic = MathRand();
    ArrayAdd(All_magics,this_magic);
   }
 //----------------------------------------
}
//+------------------------------------------------------------------+
int Get_magic(int deal_number)
{
 return(All_magics[deal_number]);  // ут была ошибка тоже
}
//+------------------------------------------------------------------+


//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   Trading(); 
   ulong t1 = GetMicrosecondCount();
   Get_magic(1000);
   ulong t2 = GetMicrosecondCount();
 
  
  
  
 
Alexandr Andreev:
Это Ваш же код

Нет. Это не мой код. Его кто то переделал.

Я никогда не использовал запись 

template<typename T> 
   void ArrayAdd(T &m[], T& a)    {m[ArrayResize(m,ArraySize(m)+1,100)-1)=a;}
   


 
Реter Konow:

Нет. Это не мой код. Его кто то переделал.

Я никогда не использовал запись 



это пример и то что получилось с его внедрением

код стал сложнее или проще?

ЗЫ: да нулевой у вас записываться нормально, проглядел сор)

 
Alexandr Andreev:

это пример и то что получилось с его внедрением

код стал сложнее или проще?

Я не знаю зачем к идеальному решению добавлять сущности. Не вижу смысла.

Вы же не одеваете две шапки одновременно. А почему?

Cначала объясните это. ))

 
Реter Konow:

Я не знаю зачем к идеальному решению добавлять сущности. Не вижу смысла.

Вы же не одеваете две шапки одновременно. А почему?

Cначала объясните это. ))


Ту не про одеть шапку.... вы просто каждый раз шьете эту шапку причем не очень качественно

Причина обращения: