В реализации у меня есть много состояний, представленных логическими переменными, таким образом, что когда состояние истинно, переменная для этого состояния является истинной, а многие или все остальные ложными. Это не очень хороший способ, и, поскольку я только планировал свое решение до написания кода, оно оказалось таким. Теперь я должен очистить его. Какое самое лучшее решение для очистки?
Я думал о enum, дать имя каждому состоянию, и таким образом одна переменная может содержать имя состояния вместо нескольких переменных. Но проблема в том, что есть другая информация, связанная с некоторыми состояниями, например, один или два экземпляра переменных Point или int, которые предназначены только для этого состояния. Как их разместить, если используется enum?
Какое самое элегантное и подходящее решение в подобных ситуациях?