Сложность функции в MQL4
Results 1 to 3 of 3

Thread: Сложность функции в MQL4

  1. #1
    Вложений: 1 Привет,
    Я только начал на прошлой неделе, чтобы узнать немного о кодировании советников
    У меня все хорошо, но я полностью удовлетворен тем, что касается использования функций
    Я написал некоторый код в качестве функции в программе, чтобы определить размер используемого лота в соответствии с балансом капитала, процентом риска и размером стоп-лосса.
    Я потратил часы и часы, пытаясь выяснить, что я делал неправильно, потому что я просто продолжал получать ошибки при попытке его скомпилировать.
    В конце я просто вставил код вместо вызова функции в программу. Не так уж сложно, так как он был вызван только дважды. Это скомпилировано хорошо тогда

    Очевидно, я делаю какую-то ошибку новичка, которая совершенно очевидна для тех, кто имеет опыт.

    Я даже пытался копировать из примеров и не мог заставить их скомпилировать.

    Я прилагаю снимок простой функции и ошибки компилятора
    Может кто-нибудь сказать, пожалуйста, что я делаю не так?

  2. #2

    Quote Originally Posted by ;
    Привет, я только начал на прошлой неделе, чтобы узнать немного о кодировании советников, с которыми у меня все в порядке, но я полностью разочарован, когда дело доходит до использования функций. Я написал некоторый код как функцию в программе, чтобы определить размер лота для использоваться в соответствии с балансом капитала, процентом риска и размером стоп-лосса. Я потратил часы и часы, пытаясь выяснить, что я делал неправильно, потому что я просто продолжал получать ошибки при попытке его скомпилировать. В конце я просто вставил код вместо вызова функции в программу. Не так уж сложно, так как он был вызван только дважды. Скомпилировано нормально ...
    Да. Объявленные пользователем функции выполняются вне любой другой функции, фактически это относится ко всем функциям, все они являются отдельными объектами.
    http://book.mql4.com/basics/functionsВ качестве примера: вставленный код int start () {int a = 10; int b = 20; int total = add (a, b);/пользовательская функция, вызываемая в start () return (0); }/функция, объявленная вне start () int add (int x, int y) {return (x y); }

  3. #3
    Большое спасибо, Раптор, я знал, что, должно быть, делал что-то явно не так. Этот бит, очевидно, не утонул. Я знал, что функции могут вызывать другие функции, но функции нельзя было объявить в других функциях. Я вроде не учел, что запуск - это сама функция.

Действующие разрешения

  • Вы не можете создавать новые темы
  • Вы не можете размещать ответы
  • Вы не можете использовать вложения
  • Вы не можете редактировать ваши записи
  •  
  • BB-код - Вкл.
  • Смайлики - Вкл.
  • Код [IMG] - Вкл.
  • Код [VIDEO] - Вкл.
  • HTML-код - Выкл.
Веб-сайт использует cookies
Веб-сайт использует cookies, в настоящее время некоторые из них уже установлены. Вы можете ознакомиться с более подробной информацией об использовании нами cookies здесь. Чтобы принять условия использования cookies, пожалуйста, нажмите на кнопку справа. Если вы продолжаете пользоваться веб-сайтом, вы по умолчанию принимаете условия использования cookies.