2) При такой комбинации выдаёт Алерт 0
if(GetLastError()!=0){Alert(GetLastError());return(0);}
После первого вызова _LastError сбрасывается в ноль. Нужно кэшировать номер ошибки:
int error = GetLastError(); if (error != 0) Alert("Ошибка №", error);
1. Например, удаление несуществующей переменной
2. Так и должно быть. Вызов GetLastError() обнуляет значение переменной _LastError (это так было в старой четвёрке, поэтому поведение оставили)
3. Исправим
1) Хмм. А как можно удалить глобальную переменную?
2) Примечание
После вызова функции содержимое переменной _LastError не обнуляется. Чтобы обнулить эту переменную, необходимо вызвать функцию ResetLastError().
Тогда в справке исправте.
Спасибо.
После первого вызова _LastError сбрасывается в ноль. Нужно кэшировать номер ошибки:
Спасибо. Это не правильно(что обнуляется).
1) Хмм. А как можно удалить глобальную переменную?
Проверить, что такая переменная существует (GlobalVariableCheck()), а потом только удалять её.
Понял.
2) Примечание
После вызова функции содержимое переменной _LastError не обнуляется. Чтобы обнулить эту переменную, необходимо вызвать функцию ResetLastError().
Тогда в справке исправьте.
Справку скорректируем.
А может всё таки чтобы не обнулялась сделать?
А может всё таки чтобы не обнулялась сделать?
Нет. Функциональность старой четвёрки не меняем.
Вы можете сделать собственную функцию, которая будет обращаться к переменной _LastError
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
1) Ошибка обработки глобальныех переменных(4057)
Можно поподробней, примеры какие то? А то столько информации по данному вопросу что аж плутаюсь(ирония).
2) При такой комбинации выдаёт Алерт 0
if(GetLastError()!=0){Alert(GetLastError());return(0);}
3) В справке граматическая ошибка.
4057
ERR_GLOBAL_VARIABLES_PROCESSING
Ошибка обработки глобальныех переменных