Я знаю, что они являются одним и тем же типом переменной, но есть ли принятый стандартный "стиль" для использования long
или Int64
?
Я хотел бы использовать наиболее распространенный.
Я знаю, что они являются одним и тем же типом переменной, но есть ли принятый стандартный "стиль" для использования long
или Int64
?
Я хотел бы использовать наиболее распространенный.
Вся документация от Microsoft и 99,999% (или около того) кода, который вы найдете в Интернете, будет использовать long
. См., Например, определение числового типа данных в ссылке на С#: http://msdn.microsoft.com/en-us/library/exx3b86w.aspx
В конце концов, это та же проблема с использованием string
или string
. В общем случае имена нижних регистров используются для типов данных значений, таких как числа или символы, а для классов используются имена верхнего регистра. В С# Int64
представлен комплексный тип данных (структура с полями, свойствами и методами, см. Документ здесь) для типа данных типа long
(см. Doc здесь). В общем, люди не используют класс Int64
для вызова методов из этого класса, например Int64.Parse
. Таким образом, вы обычно найдете что-то вроде этого:
long variable = 9.5f;
string text = "8.4";
long anotherVariable = Int64.Parse(text);
Вы получите так много разных мнений относительно такого вопроса, так как они точно такие же. Так это вам. Microsoft почти всегда использует long
, int
и short
в своей документации и примерах. Это просто псевдоним в VB.NET и С#. Поэтому я считаю, что лучше использовать их таким образом.
long
вместо Int64
int
вместо Int32
short
вместо Int16
С# использует эти ключевые слова, такие как long, int string, как псевдонимы для .NET-типов.
int
= System.Int32
long
= System.Int64
string
= System.String
Первый аргумент для использования этих ключевых слов заключается в том, что он поставляется с языком, поэтому используйте его при написании языка.
Второй аргумент использования этих ключевых слов заключается в том, что вам не нужно ставить using System;
над вашим кодовым файлом.
Другим преимуществом может быть то, что кто-то может создать новый тип под названием Int64
и поместить его где-то в ваше пространство имен (я знаю... это было бы безумием). Если ваш старый код использует тип Int64
, ваш старый код может перестать функционировать. Если ваш старый код использовал long
(псевдоним для System.Int64
), он будет работать нормально.
Вы должны использовать long
, int
и short
.
Единственное исключение, которое я знаю, - это имя функции; посмотрите BitConverter.ToInt64.
Причиной этого является то, что long не определяется в CIL, в то время как int64 is.
Я думаю, это сводится к ясности и совместимости. Int16
, Int32
и Int64
более понятны, чем short
, int
и long
. Вы знаете, просто взглянув на Int16
, что он имеет длину 16 бит.
Я думаю, что в большинстве случаев это сводится к личным предпочтениям, но если вы строго говорите "С#" без указания базовой платформы, я думаю немного по-другому. Если вы развиваетесь, чтобы придерживаться стандартов С# для переносимости на разных платформах и "будущей проверки", "длинный" был бы лучшим способом, поскольку это фактическая конструкция на самом языке. "Int64" - это фактическая структура (System.Int64) в рамках.