Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Множества set of [D7, XP]


San1 ©   (2008-03-20 13:47:00) 

Здравствуйте! Подскажите пожалуйста.

Есть множество TState= set of (s1,s2,s3,s4,s5);
var
state:TState;

делаю следующее:
...
include(State,s1);
include(State,s2);
...

Необходимо проверить вхождение добавленных значений в множество

if (sgOver in FStatusGame) or (sgVictory in FStatusGame) then Exit;

Можно ли записать это короче? Что-то вроде:

if (sgOver or sgVictory) in FStatusGame then Exit;


Семеныч   (2008-03-20 14:38:00) [1]

[4]. И говорить более не о чем.


Плохиш   (2008-03-20 13:58:00) [2]


> Можно ли записать это короче? Что-то вроде:
>
> if (sgOver or sgVictory) in FStatusGame then Exit;


if ([sgOver, sgVictory] * FStatusGame) <> [] then Exit;


Reindeer Moss Eater   (2008-03-20 13:58:00) [3]

//if (sgOver or sgVictory) in FStatusGame then Exit;

if ((2 or 4) and 12) > 0 then Exit


Reindeer Moss Eater   (2008-03-20 13:52:00) [4]

Либо зайти с другого бока и определить заранее предопределенные подмножества можества типа как это сделано для

dsEditModes


San1   (2008-03-20 13:51:00) [5]

А что это такое - битовые маски?


Reindeer Moss Eater   (2008-03-20 13:49:00) [6]

чтобы можно было короче нужны не множества, а битовые маски.


Наверх

Титульная страница Поиск, карта сайта Написать письмо