этот вопрос уже много раз тут задавался, на сколько помню там идет с запасом и по мере надобности массив расширяется
вопрос в том, при расширении или сужении, он же динамический, на него будет ИМХО тратиться одинаковое количество памяти в ОЗУ, а если статичный то уже гораздо меньше
вопрос в том, при расширении или сужении, он же динамический, на него будет ИМХО тратиться одинаковое количество памяти в ОЗУ, а если статичный то уже гораздо меньше
Вы выделяете память динамическому массиву. Прочтите справку.
//-------------------- вызываем CopyBuffer, обращаясь к разным буфера массива 2,3,4,5 CopyBuffer(Handle1,2,0,1,a) CopyBuffer(Handle1,3,0,1,a) CopyBuffer(Handle1,4,0,1,a) CopyBuffer(Handle1,5,0,1,a)
//и массив a[1,4] заполнится автоматически полностью значениями буферов с индикатора последовательно начиная с a[0,0], потом a[0,1], a[0,2] и наконец a[0,3]???
double a[1,4],b[1];
//-------------------- вызываем CopyBuffer, обращаясь к разным буфера массива 2,3,4,5CopyBuffer(Handle1,2,0,1,b);
a[0,0] = b[0];
CopyBuffer(Handle1,3,0,1,b);
a[0,1] = b[0];
pribludilsa #: Вы выделяете память динамическому массиву. Прочтите справку.
вы ветку не читали, что CopyByffer оказывается может складывать значения не только в динамический массив, но в статичный. Значит при большой потребности в копировании еденичных данных в массив, можно использовать статичный массив, чтобы не занимать много памяти ОЗУ.
вы ветку не читали, что CopyByffer оказывается может складывать значения не только в динамический массив, но в статичный. Значит при большой потребности в копировании еденичных данных в массив, можно использовать статичный массив, чтобы не занимать много памяти ОЗУ.
Это Вы справку не читали, нету разницы между статическими и динамическими массивами. Потому что Вы сами выделяете память для динамического массива.
pribludilsa #: Это Вы справку не читали, нету разницы между статическими и динамическими массивами. Потому что Вы сами выделяете память для динамического массива.
если я вначале объявляю статический массив a[10], или a[], то в ОЗУ под них будет выделено разное количество памяти же.
или вызов функции CopyBuffer выделяет память под динамический массив сама, а если я использую статичный в нем, для хранения данных, то это без разницы, все равно память будет выделена?
если я вначале объявляю статический массив a[10], или a[], то в ОЗУ под них будет выделено разное количество памяти же.
или вызов функции CopyBuffer выделяет память под динамический массив сама, а если я использую статичный в нем, для хранения данных, то это без разницы, все равно память будет выделена?
прочитал, но я понял, что если объявляешь динамический массив, то в любом случае он будет использовать много памяти, а если статичный то мало. Я не понимаю, что вы хотите сказать..
прочитал, но я понял, что если объявляешь динамический массив, то в любом случае он будет использовать много памяти, а если статичный то мало. Я не понимаю, что вы хотите сказать..
При частом распределении памяти рекомендуется использовать третий параметр, задающий резерв для уменьшения количества физического распределения памяти. Все последующие вызовы функции ArrayResize не приводят к физическому перераспределению памяти, а только меняется размер первого измерения массива в пределах зарезервированной памяти.
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
этот вопрос уже много раз тут задавался, на сколько помню там идет с запасом и по мере надобности массив расширяется
вопрос в том, при расширении или сужении, он же динамический, на него будет ИМХО тратиться одинаковое количество памяти в ОЗУ, а если статичный то уже гораздо меньше
вопрос в том, при расширении или сужении, он же динамический, на него будет ИМХО тратиться одинаковое количество памяти в ОЗУ, а если статичный то уже гораздо меньше
правильно ли я понял
//объявили массив:
double a[1,4]
//-------------------- вызываем CopyBuffer, обращаясь к разным буфера массива 2,3,4,5
CopyBuffer(Handle1,2,0,1,a)
CopyBuffer(Handle1,3,0,1,a)
CopyBuffer(Handle1,4,0,1,a)
CopyBuffer(Handle1,5,0,1,a)
//и массив a[1,4] заполнится автоматически полностью значениями буферов с индикатора последовательно начиная с a[0,0], потом a[0,1], a[0,2] и наконец a[0,3]???
и т.д.
либо в цикле
Вы выделяете память динамическому массиву. Прочтите справку.
вы ветку не читали, что CopyByffer оказывается может складывать значения не только в динамический массив, но в статичный. Значит при большой потребности в копировании еденичных данных в массив, можно использовать статичный массив, чтобы не занимать много памяти ОЗУ.
и т.д.
либо в цикле
вы ветку не читали, что CopyByffer оказывается может складывать значения не только в динамический массив, но в статичный. Значит при большой потребности в копировании еденичных данных в массив, можно использовать статичный массив, чтобы не занимать много памяти ОЗУ.
Это Вы справку не читали, нету разницы между статическими и динамическими массивами. Потому что Вы сами выделяете память для динамического массива.
если я вначале объявляю статический массив a[10], или a[], то в ОЗУ под них будет выделено разное количество памяти же.
или вызов функции CopyBuffer выделяет память под динамический массив сама, а если я использую статичный в нем, для хранения данных, то это без разницы, все равно память будет выделена?
если я вначале объявляю статический массив a[10], или a[], то в ОЗУ под них будет выделено разное количество памяти же.
или вызов функции CopyBuffer выделяет память под динамический массив сама, а если я использую статичный в нем, для хранения данных, то это без разницы, все равно память будет выделена?
ArrayResize
ArrayResize
прочитал, но я понял, что если объявляешь динамический массив, то в любом случае он будет использовать много памяти, а если статичный то мало. Я не понимаю, что вы хотите сказать..
прочитал, но я понял, что если объявляешь динамический массив, то в любом случае он будет использовать много памяти, а если статичный то мало. Я не понимаю, что вы хотите сказать..
При частом распределении памяти рекомендуется использовать третий параметр, задающий резерв для уменьшения количества физического распределения памяти. Все последующие вызовы функции ArrayResize не приводят к физическому перераспределению памяти, а только меняется размер первого измерения массива в пределах зарезервированной памяти.