[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 873

 
Gravitus:

при попытке написать

extern string array[25];

компилятор выдает

'array' - external arrays are not allowed

нужно без extern.
 
Andrei01:
нужно без extern.
но ведь тогда он уже будет не внешним...
 
Gravitus:
но ведь тогда он уже будет не внешним...
будет
 
Andrei01:
будет
а может как-нибудь обратиться к переменной, имя которой содержится в строковой переменной?
 
Gravitus:
а может как-нибудь обратиться к переменной, имя которой содержится в строковой переменной?
нужно их пронумеровать сначала.
 
Gravitus:

Уважаемые гуру, подскажите, плиз, каким образом можно найти решение такой вот несложной задачи:

на входе скрипта 25 внешних строковых переменных переменных с именами ХХХХХ_счетчик, где счетчик - натуральное число 1,2,3... 25

в теле скрипта нужно обрабатывать эти переменные в цикле for ( i=1 ; i<=25 ; i++ ){...}

не могу понять, как можно в теле цикла обратиться к соответствующей переменной, получив ее имя, используя счетчик i

массив был бы хорош, но внешние массивы не разрешены....

в конечном итоге задача сводится к тому, чтобы обратиться к переменной, имя которой содержится в строковой переменной.

С уважением, Gravitus




Можно типо такого 

for (i=0; i<=3; i++)
{
switch(i)
{
case 1 :
XXXXX_1=i;
case 2 :
XXXXX_2=i;
case 3 :
XXXXX_3=i;
break;
default: break;
}
}
 

 
Andrei01:
Вместо IndicatorCounted() напишите то что надо.


задача чтобы просчет велся при поступлении новой свечи

т.е. ведется проверка Bars- IndicatorCounted() (кол-во просчитанных баров) только изменяется в индикаторе идет основной просчет. 

 
reag:


задача чтобы просчет велся при поступлении новой свечи

время новой свечи это Time[0].
 

Andrei01, reag - благодарю

просто думал есть какие-то волшебные кавычки, ну да ладно, switch вполне полойдет :)

 
Gravitus:

Уважаемые гуру, подскажите, плиз, каким образом можно найти решение такой вот несложной задачи:

на входе скрипта 25 внешних строковых переменных переменных с именами ХХХХХ_счетчик, где счетчик - натуральное число 1,2,3... 25

в теле скрипта нужно обрабатывать эти переменные в цикле for ( i=1 ; i<=25 ; i++ ){...}

не могу понять, как можно в теле цикла обратиться к соответствующей переменной, получив ее имя, используя счетчик i

массив был бы хорош, но внешние массивы не разрешены....

в конечном итоге задача сводится к тому, чтобы обратиться к переменной, имя которой содержится в строковой переменной.

С уважением, Gravitus



Лучше через глобальные переменные:
for (i=0; i<=3; i++)
{
switch(i)
{
case 1 :
ixxxxx=DoubleToStr(i,0);
XXXXX="XXXXX_"+ixxxxx;
  XXXXX_1=GlobalVariableGet(XXXXX);
}
Причина обращения: