@Fox Увеличиваю, не особо помогает.
Создал очередь с глобальной переменной, вроде стало лучше.
@Antonio В Бас, когда меткой выходишь из функций из которой произошел вызов, то вызвавшая функция уже не помнит кто ее вызвал. Вообщем контексты теряются. Короче вывод в БАС не стоит использовать метки для выхода из функции в другую функцию.
@Antonio Ни кто не запрещает пользоваться функционалом BAS, тем более, что метки в нём есть. Если в каком то месте скрипта удобнее использовать их, то ради бога. Но чем их больше, тем сложнее весь скрипт диагностировать.
Однажды мне в личке просили помочь со скриптом, дак он полностью весь состоял из меток. Я насчитал около !пятидесяти! меток и уйму переходов. Там были функции, которые он не вызывал, а использовал через метки в разных участках кода.. Сказать что у меня потекла кровь из глаз, это ни чего не сказать...:d
@Fox спасибо за ответ, хоть я про это в целом был в курсе.
@bigorat мы с тобой на форуме баса и я не экстрасенс, так что не зная что там у тебя было в голове, когда ты писал про "метки - зло", я вполне резонно предположил, что речь идет о какой-то специфике работы именно баса, возможно баге. Вот и спросил. Но рад, что помог тебе поднять твое ЧСВ с "гугл разве отключили" и "метанием бисера".
@Antonio Ни разу не было такого. У меня очень много таких вызов. Я всегда стараюсь все на функции разбивать. У меня скрипт как дерево :) Но пока я не вкурил, что метки зло то тоже были проблемы. Теперь я их почти не использую, а если использую то только в рамках одной функции.
@Fox said in Помогите пожалуйста с логикой.:
Там были функции, которые он не вызывал, а использовал через метки в разных участках кода..
Я далек от программерских холиваров, но серьёзно, в чем тут для тебя была разница в чтении кода с вызовами функций? Это же абсолютно такой же переход.
@Antonio На пальцах что-то вроде этого
Функция1 вызвала Функцию2, а та в свою очередь Функцию3. И если меткой выйти из фунции 3 в Функцию 2, то та может после своего выполнения не вернуться в функцию 1, а остановиться.
Причинной этому видимо является, то что пропускается момент инициализации функции 2.
@Denis_krsk, а, ну это писец, о котором я и говорил, относительно функций. Отлаживать код, в котором вот так функции постоянно вызывают другие функции - это иногда очень запарно. Ну в общем это уже дело вкуса. Я стараюсь максимально последовательно писать.
Просто были случаи, что в функции 3 был цикл, а в этом цикле условие при котором выполнение не имело смысла .А тупо continue не выйдешь из функции т.к. в цикле находишься вот я по лени своей и выходил меткой.
@wmbab said in Помогите пожалуйста с логикой.:
мы с тобой на форуме баса и я не экстрасенс, так что не зная что там у тебя было в голове, когда ты писал про "метки - зло", я вполне резонно предположил, что речь идет о какой-то специфике работы именно баса, возможно баге. Вот и спросил. Но рад, что помог тебе поднять твое ЧСВ с "гугл разве отключили" и "метанием бисера".
У меня все в порядке с ЧСВ, и за ваш счет я его поднимать не собираюсь уж точно, как я писал, пржде чем что то спрашивать попробуйте узнать это сами, поскольку вы таким образом превратитесь в подобие одного персонажа на форуме, который на любой чих требует сиюминутный ответ, вместо того что бы поискать информацию самому. Поэтому ни в коем разе вам это было не в обиду, и уж если вы знаете почему лучше не юзать метки в обычном програмировании то аналогию к BAS-у применить могли. За сим откланиваюсь :)