Пространство имен системы C # - зачем мне его импортировать?

([\s\S]*)<FooBar>

Точка соответствует всем, кроме строк новой строки (\r\n). Поэтому используйте \ s \ S, который будет соответствовать всем символам.

2
задан thisextendsthat 16 January 2019 в 09:26
поделиться

3 ответа

Практически нет разницы между string и System.String, но все же String строка ключевого слова C # отображается на тип .NET System.String - это псевдоним, который соответствует соглашениям об именах языка.

Также string является ключевым словом (псевдоним в данном случае), тогда как String является типом.

Примечание. Если вы используете Visual Studio 2015 или + и пытаетесь использовать String, программа предлагает вам «упростить код», перенеся его в string

, чтобы вы могли избежать Системы. Струна и идти со строкой без проблем.

enter image description here

0
ответ дан Arunprasanth K V 16 January 2019 в 09:26
поделиться

Псевдонимы более «как бы» вверху каждого файла, компилятор вставлял

using string = System.String;
using int = System.Int32;
using decimal = System.Decimal;

и т. Д.

Я не верю, что именно так компилятор реализует 1 встроенных псевдонимов, но это общий эффект. Когда вы используете с использованием директив псевдонима , вам также не нужно иметь директиву using для включающего их пространства имен, и это не приводит к тому, что оно включает в себя включающее пространство имен в область действия. [115 ]


1 Мой поисковик в репозитории Roslyn github подводит меня.

0
ответ дан Damien_The_Unbeliever 16 January 2019 в 09:26
поделиться

Вам необходимо импортировать пространство имен, только если вы не используете полное, полное имя типа:

namespace Test {
  class Cxx {
     public System.String _exampleField; 
  }
}

против:

using System;

namespace Test {
  class Cxx {
     public String _exampleField; 
  }
}

Вы можете импортировать один тип из пространства имен с использованием псевдонима.

Встроенные псевдонимы работают аналогично тем, которые вы пишете; если вместо встроенного псевдонима string у вас есть свой собственный, они вам не понадобятся для импорта всего пространства имен System:

using mystring = System.String;

namespace Test {
  class Cxx {
     public mystring _exampleField; 
  }
}

Если единственными типами из пространства имен System, которые вы используете, являются те, которые имеют псевдонимы, вам не нужно импортировать.

namespace Test {
  class Cxx {
     public string _exampleField; 
  }
}
0
ответ дан Pete Kirkham 16 January 2019 в 09:26
поделиться
Другие вопросы по тегам:

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