Я знаю, что так можно сделать в языке программирования, но вот только в mql5 все по-другому...
Сейчас мне приходится создавать переменные demo_rows_1, demo_rows_2 и т.д. А хотелось бы, чтобы эту переменную я мог как бы генерировать в цикле: demo_rows_{i} или что-то в этом духе. Такое возможно?
Массив не подходит, потому что изначально переменная создается из ресурса еще до выполнения функций.
Существует ли такой способ создания переменной на лету?
Динамический массив не пробовали?
С массивами все понятно. И тогда мне придется получить доступ вручную к каждой переменной demo_rows_1, demo_rows_2 и т.д. чтобы сначала зарядить массив. Можно ли обойти заряжение массива путем генерации нужного имени переменной на лету?
Вот пример из php, где через знак доллара $ можно объявить переменную:
$value = "demo_rows_1"; ${$value} = 0.123;
В итоге получаем на лету:
$demo_rows_1 = 0.123;
С массивами все понятно. И тогда мне придется получить доступ вручную к каждой переменной demo_rows_1, demo_rows_2 и т.д. чтобы сначала зарядить массив. Можно ли обойти заряжение массива путем генерации нужного имени переменной на лету?
Вот пример из php, где через знак доллара $ можно объявить переменную:
В итоге получаем на лету:
Вот то же самое:
double demo_rows[]; ... int nTotal = ArraySize(demo_rows); if (ArrayResize(demo_rows, nTotal + 1) != nTotal + 1) { // ошибка изменения размера массива return } demo_rows[nTotal] = 0.123; ... nTotal = ArraySize(demo_rows); for (int i = 0; i < nTotal; ++i) Print(demo_rows[i]);
С массивами все понятно. И тогда мне придется получить доступ вручную к каждой переменной demo_rows_1, demo_rows_2 и т.д. чтобы сначала зарядить массив. Можно ли обойти заряжение массива путем генерации нужного имени переменной на лету?
Вот пример из php, где через знак доллара $ можно объявить переменную:
В итоге получаем на лету:
Что вам мешает создать динамический массив demo_rows[]. Далее когда вам нужно увеличиваете его размер на 1. И "заряжайте" свой массив в цикле не городя лишних сущностей в виде переменных Обращение к данным в массиве по индексу. Пример из PHP тут вообще не катит. PHP интерпретатор, mql компилятор можно сказать специализированный C++.
Что вам мешает создать динамический массив demo_rows[]. Далее когда вам нужно увеличиваете его размер на 1. И "заряжайте" свой массив в цикле не городя лишних сущностей в виде переменных Обращение к данным в массиве по индексу. Пример из PHP тут вообще не катит. PHP интерпретатор, mql компилятор можно сказать специализированный C++.
Вот то то и оно что не катит. Я же говорю переменные demo_rows_1, demo_rows_2 и т.д. объявляются как переменные ресурса в самом начале до всех функций. И по-другому объявить эти переменные ресурса нельзя. Или можно?
Ладно, я понял что нельзя
Вот то то и оно что не катит. Я же говорю переменные demo_rows_1, demo_rows_2 и т.д. объявляются как переменные ресурса в самом начале до всех функций. И по-другому объявить эти переменные ресурса нельзя. Или можно?
Ладно, я понял что нельзя
А разве в качестве "переменной ресурса" массив объявить нельзя?
Вот то то и оно что не катит. Я же говорю переменные demo_rows_1, demo_rows_2 и т.д. объявляются как переменные ресурса в самом начале до всех функций. И по-другому объявить эти переменные ресурса нельзя. Или можно?
Ладно, я понял что нельзя
Три раза перечитал тему, так и не понял, что нужно.
Вроде правильно сказали - динамический массив.
Кроме того - создание переменных в цикле, чего бы их не создавать-то ? Что там "нельзя" ?
И, кстати, про удаление не забыл ?
Существует ли такой способ создания переменной на лету?
или списки или динамические массивы или вот делал шаблон все, что хотите оборачиваете в класс с наследованием от CObject и добавляете свои методы, или не добавляете, но в любом случае доступ будет как к массиву через [] и есть методы AddValue() и Delete()
Кроме того - создание переменных в цикле, чего бы их не создавать-то ? Что там "нельзя" ?
Пример?
Я понял так:
Человеку нужно в любой момент создать переменную... Но объявить переменную в любом месте не проблема. Значит он хочет создать переменную с именем, которое генерируется автоматически.
Из моего опыта. На PHP это было возможно и не сложно. На С++ ... не помню, но вроде, с такой задачей не сталкивался. На MQL - без бубна не получится, но!, если очень захотеть, то можно ))))))

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Я знаю, что так можно сделать в языке программирования, но вот только в mql5 все по-другому...
Сейчас мне приходится создавать переменные demo_rows_1, demo_rows_2 и т.д. А хотелось бы, чтобы эту переменную я мог как бы генерировать в цикле: demo_rows_{i} или что-то в этом духе. Такое возможно?
Массив не подходит, потому что изначально переменная создается из ресурса еще до выполнения функций.
Существует ли такой способ создания переменной на лету?