С помощью ArrayResize можно изменить размер в первом измерении массива. А что делать, если нужно изменить оба размера в двухмерном массиве? Внутри функции, в которую этот массив передается по ссылке?
- Изменение размерности двухмерных массивов
- А что ArrayResize в функциях не работает?
- [АРХИВ] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 3.
Я как-то сделал такое.
//+------------------------------------------------------------------+ //|Запись в квазидвумерный массив | //+------------------------------------------------------------------+ int DWriteArr2(double& arr[],double data,int i,int j,int Dim1,int Dim2) { arr[i+j*Dim1]=data; return(0); } //+------------------------------------------------------------------+ //|Чтение из квазидвумерного массива | //+------------------------------------------------------------------+ int DReadArr2(double& arr[],double& data,int i,int j,int Dim1,int Dim2) { data=arr[i+j*Dim1]; return(0); } //+------------------------------------------------------------------+ //|Изменение размеров квазидвумерного массива | //+------------------------------------------------------------------+ int DResizeArr2(double& arr[],int Dim1,int Dim2) { int res=ArrayResize(arr,Dim1*Dim2); if (res <= 0) return(-1); else return(0); }
Комментарий: Мне нужно было устанавливать размер массива один раз - исходя из параметров индикатора. Если делать аналоги "вообще", то нужно обеспечить сохранение значений при изменении размера и желательно вставить проверки на выход за границы при обращении. И наверное ещё что-нибудь :), просто я на эту тему долго не думал - цели такой не было. Но идея, думаю, понятна. А может кто-то и сделал такую библиотеку уже.
Спасибо. Посмотрю, но меня такой вариант, кажется, не спасет.
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь