- Операции с файлами.
- Пожелания к MQL5
- Обновление платформы MetaTrader 4 build 670: виртуальный хостинг, web-запросы и работа с сигналами из MQL-программ
Есть ли возможность написать пользовательскую ф-цию, наподобие Alert(...), Print(...) то есть с динамическим количеством параметров??
Во первых Alert(...) и Print(...) имеют число параметров - 64 и у всех значение по умолчанию - пустая строка.
Это мое мнение, даже еслы я ошибаюсь возможность написания такой функции есть- таким способом, каким я описал выше.
primer (123123); // primer ();//"любое" колво параметров PrImer2(2,2); //обязательно 2 параметра + еще два } ///////////// int primer (int a=0, int b=0, double c=5, string d="") {} int PrImer2 (int a, int b, double c=5, string d="") {} //параметры которые инициированы можнo пропускать. Правило: 1 идут подряд 2. все что левее это обязательные парамтеры
Во первых Alert(...) и Print(...) имеют число параметров - 64 и у всех значение по умолчанию - пустая строка.
Это мое мнение, даже еслы я ошибаюсь возможность написания такой функции есть- таким способом, каким я описал выше.
не похоже, можно проверить, результат разный:
double c1 = 100.2300001; string c2 = 100.2300001; Alert(c1); Alert(c2);
string Z(string str1="",string str2=""....){ string retstr=""; if(str1!="")retstr=retstr+str1; if(str2!="")retstr=retstr+str2; ... ... ... return(retstr); }
да понимаю я это, я привел код, который доказывает что ф-ция Alert не имеет вид Alert(string s1 = "", string s2 = "", string s3 = "", ... 64 раза), а умеет динамически определять тип.
А почему вы думаете что ваш код что то доказывает? Числа типа double выводятся с точностю 4 знака после комы,
а при присвоении числа типа double строковой переменной получается строка в которой 8 заков после комы. Функция
Alert() просто выводит эти значения.

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования