Существует ли способ выйти из корневого пространства имен в VB?

Я редко использую структуру для вещей. Но это - просто я. Это зависит, нужен ли мне объект быть nullable или нет.

, Как указано в других ответах, я использую классы для реальных объектов. У меня также есть мышление структур, используются для хранения небольших объемов данных.

13
задан Shimmy 21 August 2009 в 13:41
поделиться

4 ответа

Я думаю, что печальная правда в том, что вы не можете. Пространства имен добавляются к корневому пространству имен. В документации нет никаких намеков на какие-либо механизмы экранирования. Есть примечание об использовании ключевого слова Global по отношению к пространствам имен, но я интерпретирую эту часть текста как обсуждение того, как ссылаться на пространства имен, а не как их объявлять.

5
ответ дан 1 December 2019 в 22:58
поделиться

Обратите внимание на этот вопрос: Можно ли переопределить корневое пространство имен VB.NET? .

Суть в том, что единственный вариант - оставить пространство имен по умолчанию пустым в свойствах проекта, а затем заключить все определения классов / модулей в операторы пространства имен.

1
ответ дан 1 December 2019 в 22:58
поделиться

В свойствах проекта VB вы можете изменить корневое пространство имен. По умолчанию это то же самое, что и имя проекта, но вы можете удалить его, и тогда у вас будет полная мощь структуры пространства имен в коде. Недостатком является то, что вы должны указывать имя проекта как пространство имен везде в коде, где оно вам нужно ...

Для проектов C # аналогичная настройка в свойствах проекта - это только пространство имен по умолчанию, которое переопределяется, если вы укажите пространство имен в коде. Для проектов VB он определяет пространство имен верхнего уровня, а не значение по умолчанию ....

0
ответ дан 1 December 2019 в 22:58
поделиться

Установка пространства имен в VB.NET почти то же самое, что объявление пространства имен в C #, только с синтаксисом VB.NET! К сожалению, корневое пространство имен присутствует всегда, поэтому любые новые объявленные пространства имен будут находиться внутри корневого пространства имен.

Namespace ConsoleApplication1
  Class Program
    Private Shared Sub Main(ByVal args As String())
        Dim mc As New System.Text.MyCustom()
    End Sub
  End Class
End Namespace

Namespace System.Text
  Public Class MyCustom
  End Class
End Namespace

Приведенный выше код даст вам следующее, если корневое пространство имен будет Test .

Test.ConsoleApplication1
Test.System.Text


Приветствую вас за комментарии, ребята, размещал в памяти!

0
ответ дан 1 December 2019 в 22:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: