Про "<<" Тоже известное «вуду». Просто про него чаще знают те, кто работал с C/C++ =)
А «множества», про которые я говорил, нужны, например, для такого (загрузить из базы список пользователей, определенного вида. например только программистов и менеджеров):
не вижу припятствий использовать Enum.
В MS SQL, MySQL, Oracle(за остальных не ручаюсь) есть операция «bitwise and». Пишите «where (e.Kind & employeeKind) <> 0» и получаете всех кодеров и менеджеров
>1. Множества (как класс в библиотеке) в С# всё-таки есть, и на любой вкус.
Про то, для чего нужно «множество», о котором я написал в этом посте, я написал и комментом выше и в самом посте:
«если где-то нужно передать в качестве аргумента функции несколько флагов»
+
LoadEmployees (ref dsEmployees, EmployeeKind.Coder | EmployeeKind.Manager);
Создавать специально обьект для множества всего лишь для одиночного вызова функции как-то не хочется.
>2. Пишите [Flags] вместо [FlagsAttribute]
спасиб, поправлю =)
«Множества» в C#