Передаю строку в dll не указываю, что строка передается по ссылке, но все равно dll меняет исходную строку. В mql4 что строки всегда передаются по ссылке и потому знак & (ампирсанта) игнорируется и не имеент значения стоит он или нет, строка всегда передайоться по ссылке ?
- Critical error
- Помогите подключит DLL
- передача тикера символа в DLL на С++ и вызов в МТ4 обратно
Если нужно только передать MQL строку в DLL, ссылка не используется. Здесь вырезки из работающего советника.
Начало одной из С++ функций из DLL:
DllExport int WINAPI DllSetTOHLCV (char* szSymbol, int nTime, int nOpen, int nHigh, int nLow, int nClose, int nVolume) { BString str = szSymbol; str.MakeLower();
Советник:
#import "FxExt.dll" int DllIdle (); int DllSetTOHLCV (string szSymbol, int nTime, int nOpen, int nHigh, int nLow, int nClose, int nVolume); #import
даа. большое спасибо за пример, а нельзя все таки уточнить как передается строка ? потому, что вот смотрите на пример, это конечно спасибо, а вот то что я спросил, всегда строка передается по ссылке или нет, ели если в длл указано, что параметр будет принят по ссылке, то значит в скрипте можно не указывать?
если dll Ваша, то используйте const чтобы исходные значения не менялись.
строка из mql всегда будет передана по ссылке
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь