Можно поместить перечисление, новый codefile с .cs расширением, чтобы intellisense работал, удостоверяются его часть проекта/решения, и конечно это должно быть общедоступное перечисление так, чтобы у Вас был объем решения для него. Если intellisense является проблемой, удостоверьтесь, что Вы создаете свое решение однажды, у меня была эта проблема однажды и просто восстанавливание, решенное это. Пространство имен является хорошим вариантом, если Вы хотите организовать свой код правильно, и Вы кодируете крупный проект. Платформа.NET была большой. таким образом, это имеет перечисления под пространствами имен только для лучшего понимания и организации кода.
Лекс должен был использоваться совместно с Якком. История и подробности этого подробно описаны в статье Стивена Джонсона Yacc: Another Compiler Compiler . Синтаксический анализатор Yacc использует только имена, начинающиеся с «yy» - здесь не обсуждается явное значение, кроме простого желания пространства имен. «Yy» в lex.yy.c указывает, что вывод lex предназначен для синтаксического анализатора yacc.
Я считаю, что «yy» используется для обозначения того, что это сгенерированный файл кода.
Обычно утилита lex записывает созданную программу в файл lex.yy.c - Ссылка
Я думаю, что это исходит от Yacc, одного из старых генераторов парсеров.
Возможно, от YACC (пока Another Compiler Compiler), который использовался с Lex для реализации большого количества компиляторов и подобных программ. Эквиваленты Gnu - это Bison и Flex, и сейчас они выглядят намного более распространенными, поэтому связь может быть неочевидной.