Анонс обновления MetaTrader 4 build 507: Быстрая регистрация сигнала и задание спреда при тестировании - страница 3

 

NULL и "" это две разные строки. По умолчанию строка инициализируется не "", а NULL.

Поэтому здесь сравнение с MSVC не канает, там это указатель на нуль-строку, а здесь всегда структура.


 
TheXpert:

{"", NULL, NULL};


Разве символ конца строки не ноль?

Т.е. если мы запихнули в string чистый ноль, то это и должна быть пустая строка, иначе не представляю. Но я переписал пример без инициализации, так что это не главное.

 
нифига, стринги без инициализации не канают. и так с самого начала.
 

220Volt

мусор в стрингах

Сильно сказано :)

 
Alexz:

Сильно сказано :)


  Мусор в неинициализированных переменных обычное дело. так что делайте выводы.
 
220Volt:

Разве символ конца строки не ноль?

Т.е. если мы запихнули в string чистый ноль, то это и должна быть пустая строка, иначе не представляю. Но я переписал пример без инициализации, так что это не главное.

По поводу агрегатной инициализации по умолчанию:

Тут конечно можно поспорить (нет конструктора принимающего целое, только указатель), во всяком случаи MSVC, MinGw проглатывают без проблем:

string s[3] = {""};       \\ Два подставленных нуля, расцениваются нуль терминатором, а не указателем.
cout<<(s[1] == "");       \\ cout: 1

string str = '\0';        \\ А так проблемы.

Но mql не C++, спорить не буду, хотя считаю, такое поведение в C++ нормальным. Но случай с дефолтовым конструктором считаю в МКЛ косячным.

 

220Volt:

... (нет конструктора принимающего целое, только указатель)...

Хотя почему нет? http://www.cplusplus.com/reference/string/string/string/

initializer list (8)    string (initializer_list<char> il);

PS:

А если МКЛ не умеет корректно обращаться со списком инициализации для стрингов, то необходимо выдавать сообщение на этапе компиляции.

 
ale002:

9. Terminal: Исправлено отображение окна "Навигатор", Market Watch и вкладки быстрой торговли при использовании крупных шрифтов в Windows.

Мне этот пункт нужнее всего, спасибо. А как насчёт шрифтов ценовой и временной шкал чарта - к ним это исправление применено? Ярлычки графиков в терминале и страниц в редакторе тоже мелкоскопические при увеличенном шрифте в ОС. В билде 505 этот дефект добралсо до панельки торговли в 1 клик, оч хотелось бы оставить как в 500:

http://jpegshare.net/images/2b/5a/2b5af70bcf0f394677e856c8e7304011.png

Слишком хорошо подумал про MQ. Сделали-то всё наоборот - теперь и на этих вкладках хрен чего разберёшь без лупы, если настройки шрифтов ОС отличаются от компьютера разработчика
 

Ну и как мне с этим бороться?


После обновления не могу дописать советник. Компилируется как обычно, но в тестере сообщается весёлая новость: "файл повреждён, перекомпилируй"... И сколько можно перекомпилировать? ex4 создаётся. Удалял его и компилил по-новой - тот же эффект...

 
artmedia70:

Ну и как мне с этим бороться?


После обновления не могу дописать советник. Компилируется как обычно, но в тестере сообщается весёлая новость: "файл повреждён, перекомпилируй"... И сколько можно перекомпилировать? ex4 создаётся. Удалял его и компилил по-новой - тот же эффект...

Можете прислать исходник в сервисдеск или через личные сообщения мне? Это поможет быстро выявить проблему.