Страница 2 из 2
Открыть окно по размеру ClientArea главного окна
Добавлено: 12 Апрель 2019, 14:51
kreator
Вообще-то использование halt некошерно:
HALT should not be used in multi-DLL applications, and should only be used as a debugging technique.
HALT не должен использоваться в приложениях с несколькими DLL, и должен использоваться только как метод отладки.
Открыть окно по размеру ClientArea главного окна
Добавлено: 12 Апрель 2019, 15:58
Yufil
Ну да... Но зачем-то этот оператор есть.. Специально залез в HELP и проверил наличие GOTO, сразу от души отлегло
Бывают случаи, когда без него хреново. Например, когда ты глубоко внутри программы обнаруживаешь, что база отрубилась. Или поступил снаружи некий сигнал, что надо срочно выйти из программы. Или приходится ( мой случай ) работать со сторонней библиотекой с огромными утечками памяти и не освобождающей нужные файлы. В программе стоит что-то типа:
Код: Выделить всё
IF abortFlag
RUN( COMMAND( 0 ) )
HALT()
END
Программа сама себя явно рестартует ....
Открыть окно по размеру ClientArea главного окна
Добавлено: 12 Апрель 2019, 16:33
kreator
Yufil писал(а): ↑12 Апрель 2019, 15:58
Ну да... Но зачем-то этот оператор есть.. Специально залез в HELP и проверил наличие GOTO, сразу от души отлегло
По поводу GOTO недавно был забавный случай. Великовозрастный коллега похвалился классным ходом. Оказалось, это goto. Но, оказывается, так просто его не напишешь, компилятор ругается. И он нашёл вариант!!! Создал рутину и вот там... Я говорю - "Твою энергию да в мирных целях". Я переписал его кусок минут за пять через loop. Получилось компактнее и понятнее. Сколько потратил времени на поиск решения как обмануть компилятор, которые ругается на метки для goto неизвестно. Думаю более пяти минут. И по своей сути получил говнокод. Грубовато, но что поделать?