metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2009-12-30 09:16 pm

C# и namespace

"Не прошло и сто лет", как я обнаружил, что объявлять namespace необязательно - классы объявленные на верхнем уровне в файле, становятся членами namespace по умолчанию. А студия неймспейс генерит автоматом всегда.
Внимание, вопрос - если меня раздражает лишний отступ на namespace и я убрал его объявление - кошерно ли это? Объявления классов стали начинаться от левого края и это немного читабельнее для мозга, но можыд, я тем самым нарушил какие-нибудь тонкие талмудистские запреты и меня ждет кара?

[identity profile] metaclass.livejournal.com 2009-12-30 07:57 pm (UTC)(link)
Точно, оно же в global попадает. Вот же трасца, я надеялся что в дефолтный неймспейс.

[identity profile] w00dy.livejournal.com 2009-12-30 08:20 pm (UTC)(link)
дефолтных неймспейсов нет. Точнее asp.net что-то придумывает при компиляции. А так - есть только дефолтный namespace alias, global который, но можно свои задавать.

[identity profile] metaclass.livejournal.com 2009-12-30 08:22 pm (UTC)(link)
У проекта есть же основной неймспейс, в него еще все ресурсы попадают.

[identity profile] w00dy.livejournal.com 2009-12-30 08:30 pm (UTC)(link)
А, ты про этот. Это не более чем информация куда класть новые елементы (классы и ресурсы, например) и не более. При компиляции она нигде не используется. А в сборке может лежать всё что угодно в любых неймспейсах, хоть в System.*