• Для чего нужны переменные флаги?

    @Stqs
    senior software developer
    не нужно воспринимать флаги как что-то супер-специфическое или суперсложное
    это не более чем обычная переменная которая влияет на поток программы

    пример из жизни
    вы программируете целый день на работе и вечером идете домой
    допустим в течении дня может позвонить супруга и попросить зайти вечером в магазин (выставляет флаг ЗАЙТИ_В_МАГАЗИН = True)
    в конце дня этот флаг проверяется - если он True - то мы зайдем в магаз, если нет - соответственно не зайдем

    нюансы здесь:
    - флаг может быть выставлен в ЛЮБОЕ время
    - флаг не обязательно выставляете Вы сами!
    - Ваша реакция на флаг не обязательно сиюминутная
    - перед уходом домой лучше позвонить супруге и уточнить состояние флага :)

    флаг не обязательно должен быть буленовской переменной, это понятие скорее логическое, например вместо флага ЗАЙТИ_В_МАГАЗИН (при котором не совсем понятно что покупать то) может использоваться более умная конструкция типа ArrayList списокПокупок = {}. Вначале дня список пустой, в течении дня жена вспоминает чтото - и дописывает вещи в спискоПокупок
    в конце дня вы просто проверяете - пуст ли список (флага нет) - и тогда идете домой с чистой совестью
    если же там есть хоть что-то (флаг поднят) - Вы уже знаете что 1) идти нужно 2) что именно нужно купить
    Ответ написан
    Комментировать