Объявление пространств имен в c#?

Узнай цену своей работы

Формулировка задачи:

Всем привет. Почему в данном примере:
Листинг программы
  1. using NamespaceA.NamespaceB.NamespaceC;
  2. namespace NamespaceA
  3. {
  4. namespace NamespaceB
  5. {
  6. namespace NamespaceC
  7. {
  8. class MyClassC { }
  9. }
  10. class MyClassB { }
  11. }
  12. class MyClassA { }
  13. }
  14. // В данном месте импорт недопустим.
  15. // Импорт допустим или в теле namespace, или перед всеми другими пространствами имен.
  16. //using NamespaceA;
  17. //using NamespaceA.NamespaceB;
  18. //using NamespaceA.NamespaceB.NamespaceC;
  19. namespace Namespaces
  20. {
  21. class Program
  22. {
  23. static void Main()
  24. {
  25. MyClassA myA = new MyClassA();
  26. MyClassB myB = new MyClassB();
  27. MyClassC myC = new MyClassC();
  28. }
  29. }
  30. }
Который демонстрирует правило :
// В данном месте импорт недопустим. // Импорт допустим или в теле namespace, или перед всеми другими пространствами имен.
так вот, у меня вопрос к данному правилу. Ведь c# - это компилируемый язык а не интерпретируемый, а значит код не читается строчка за строчкой а строится синтаксическое дерево. И поэтому мне интересно не все ли равно где объявлять пространства имен? P,s пример демонстрирует данное правило таким образом, что если снять комментарии с импорта ПИ - после их объявления то будет ошибка.

Решение задачи: «Объявление пространств имен в c#?»

textual
Листинг программы
  1. using System; // это подключение пространства имен
  2. using static System.Console; // а вот это импорт функциональности классов

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.692 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы