Только по ссылке (Формальные параметры).
Параметры простых типов передаются по значению, то есть изменения соответствующей локальной переменной такого типа внутри вызываемой функции никак не отразится в вызывающей функции. Массивы любых типов и данные типа структур всегда передаются по ссылке. Если необходимо запретить изменение массива или содержимого структуры, параметры этих типов должны быть объявлены с ключевым словом const.
Существует возможность передавать по ссылке и параметры простых типов. В этом случае модификация таких параметров отразится на соответствующих переменных в вызываемой функции, переданных по ссылке. Для того чтобы указать, что параметр передается по ссылке, после типа данных необходимо поставить модификатор &.
Смотрите кроме того Когда нужно использовать указатели в MQL5
Только по ссылке (Формальные параметры).
Смотрите кроме того Когда нужно использовать указатели в MQL5
Спасибо за совет, вроде получилось. Такой способ мне кажется самым удобным, когда функция должна возвращать более одного, значения.
Но синтаксис какой то мне кажется не совсем удачный, отправляем в функцию значение переменной pTest(ii), а в итоге оказывается что оно изменилось. Почему нельзя было сделать как в си++, когда в функцию отправляется именно указатель.
void pTest(int& i){ i++;}
//--
int OnInit()
{
int ii=1; pTest(ii); Print("ii=",ii);
return(0);
}
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Доброго времени суток.
Подскажите кто знает как передавать данные для функции через указатели.
Пример
void f1 (int* v0, double* v1)
{
..........
.............
}
Заранее благодарю.