Есть ли значимая разница между "Double" и "double" в .Net? - PullRequest
15 голосов
/ 17 октября 2010

Что касается лучших практик, есть ли существенная разница между использованием:

Double d;

и

double d;

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

Ответы [ 5 ]

16 голосов
/ 17 октября 2010

Разницы нет.double это просто псевдоним для System.Double в C #.

Обратите внимание, что VB.NET не имеет одинакового псевдонима (int для System.Int32, double для System.Double и т. Д.), Поэтому псевдоним применим только к C #, а не к .NET в целом.

11 голосов
/ 17 октября 2010

Нет, разницы нет: double - это ключевое слово C #, которое является псевдонимом для типа System.Double.

1 голос
/ 12 апреля 2015

небольшая разница здесь.

-Можно иметь класс, параметр, переменную с именем «Double», но если вы хотите назвать его «double», вы должны набрать @ double.

-Вы можете использовать Qualifier для Double, но не для Double. ех

System.Double d; //Correct
System.double d; //incorrect. Compiler error: Identifier expected for "System." .
Double Double,@double;//Correct
double double;//incorrect ,Identifier expected for both doubles

то же самое для классов и параметров .... также то же самое для String-string, Boolean-bool .....

0 голосов
/ 19 апреля 2013

На самом деле ... после дизассемблирования я обнаружил, что System.Double - это оболочка вокруг double ... Так что double не является "ярлыком" для System.Double.

0 голосов
/ 17 октября 2010

В C # Double и double одинаковы, однако Double гарантирует одинаковость для всех платформ .NET, и, насколько я помню, double IS одинаков для всех платформ, но не гарантируется как таковой (несмотря на то, что это де-факто).

...