Скачать MetaTrader 5

Как перебрать в цикле несколько массивов?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Узнай последние события MQL5.community!
Maxim Dmitrievsky
13748
Maxim Dmitrievsky 2015.10.03 14:23 

Есть несколько массивов, нужно в цикле изменить их размер, что бы не писать для каждого из них кучу строк, как это сделать?

double c1[],c2[],c3[],c4[],c5[],c6[],c7[],c8[],c9[],c10[],c11[],c12[],c13[],c14[],c15[],c16[],c17[],c18[],c19[],c20[],
c21[],c22[],c23[],c24[],c25[],c26[],c27[],c28[],c29[],c30[],c31[],c32[],c33[],c34[],c35[],c36[],c37[],c38[],c39[],c40[],
c41[],c42[],c43[],c44[],c45[],c46[],c47[],c48[],c49[],c50[],c51[],


for (int i=1; i<51; i++)
   {
    ArrayResize(???+i,1000); Как записать имена массивов?
   }
Комбинатор
15918
Комбинатор 2015.10.03 14:49  
Позаворачивать массивы с классы (структуры) а с объектами уже воротить что душе угодно
Maxim Dmitrievsky
13748
Maxim Dmitrievsky 2015.10.03 14:56  
Комбинатор:
Позаворачивать массивы с классы (структуры) а с объектами уже воротить что душе угодно
А в структурах тут нет доступа по номеру элемента, только по имени, в итоге то же самое получается (у меня) :)
Anatoli Kazharski
56808
Anatoli Kazharski 2015.10.03 15:04  
//+------------------------------------------------------------------+
//|                                                         Test.mq5 |
//|                        Copyright 2015, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2015, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.00"
//--- Массив массивов
struct Arrays
  {
   double            array[];
  };
Arrays a[51];
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   int total=ArraySize(a);
   for(int i=0; i<total; i++)
      ArrayResize(a[i].array,1000);
//---
   for(int i=0; i<total; i++)
      Print(i," > ",ArraySize(a[i].array));
  }
//+------------------------------------------------------------------+
Maxim Dmitrievsky
13748
Maxim Dmitrievsky 2015.10.03 15:09  
Anatoli Kazharski:
Он оно как! спасибо :)
Alexey Busygin
6437
Alexey Busygin 2015.10.03 18:58  
Maxim Dmitrievsky:

Есть несколько массивов, нужно в цикле изменить их размер, что бы не писать для каждого из них кучу строк, как это сделать?

Это несколько?
Maxim Dmitrievsky
13748
Maxim Dmitrievsky 2015.10.03 19:16  
Alexey Busygin:
Это несколько?
Там их 500 :)
Alexey Busygin
6437
Alexey Busygin 2015.10.03 19:32  
Maxim Dmitrievsky:
Там их 500 :)
Лучше было бы наверно использовать 2х мерный массив? Если не секрет какие данные хранят эти 500 массивов
Vladimir Karputov
Модератор
45511
Vladimir Karputov 2015.10.03 19:33  
Maxim Dmitrievsky:
Там их 500 :)
А какая задача ставиться, если для её решения нужно столько массивов и ещё с размерностью 1000? Просто интересно.
Alexander Voronkov
18869
Alexander Voronkov 2015.10.03 19:47  
Alexey Busygin:
Лучше было бы наверно использовать 2х мерный массив? Если не секрет какие данные хранят эти 500 массивов
Ну тогда объясните, а не...
Maxim Dmitrievsky
13748
Maxim Dmitrievsky 2015.10.03 20:58  
Alexey Busygin:
Лучше было бы наверно использовать 2х мерный массив? Если не секрет какие данные хранят эти 500 массивов
хай лоу опен клоуз
12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий