
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
как вернуть массив из функции? нашёл пока обходной путь, но явно ж должен быть способ как это сделать "в лоб" ))
В лоб - никак... разве, что указатель на массив. Например:
CArrayDouble *Function(void);
Не в лоб, но вполне стандартный подход, как-то так, в таком разрезе:
В общем, возвращаемый массив - это параметр-ссылка...ага, спасибо... пытался просто сразу
return *х; по привычке, как на с++ ))
вместо
return GetPointer(х)
разобрался ))
Новая статья Основы программирования на MQL5: Массивы опубликована:
Автор: Дмитрий Федосеев
1 Вопрос:
Компилятор запрещает такую конструкцию. Почему?
double qwerty(double &q[]);
#import
Вот я делаю dll я хочю ей передать указатель на массив
Но не могу понять как это сделать.
Чтото не так.
Мне нужно некий аналог с++
double qwerty(double *q);
double *q;
q = new double [100];
qwerty(q);
Как это сделать на MQL5...
Thanks for your code it saved me some time to write. I ried to used the MQL5 Array object (double,int etc.) and I just got frustrated. I came to your post and found your code to resize the arrays that was awesome thanks. I modified your code to cater for any data type. Just dont try to use the Contains (Search method) method for objects as it might not work as objects might be references, not sure I haven't tested this. I'm trying to recreate C# inside MQL5 hence the abbreviations are similar :)
God Bless !!!
Then you can declare them like so:
and create them like:
and in the code you use them like a normal class:
Хорошо, давайте попробуем английскую версию MQL.
Спасибо за ваш пост с кодом. Он сэкономил мне время. Я пробовал использовать массивы MQL, и они были запутанными. Я был очень подавлен тем, что мне снова нужно писать базовые структуры, которые должны были быть там, но потом я нашел ваш код, который сэкономил мне время на изучение массивов и того, как сделать их динамически увеличивающимися. Спасибо.
Надеюсь, я смогу вам помочь! Код ниже работает для всех типов данных. Он будет работать и на объектах, но метод Contains (поиск) может не сработать. Я тестировал его только на типах (double, int, bool). Со строками тоже могут возникнуть проблемы, и код, возможно, придется расширить.
Тогда вы можете объявить его для всех типов, которые вам нужны, как это сделано:
Надеюсь, это кому-нибудь поможет