在C#中长时间接受Int64的风格?

我知道他们是相同的variablestypes,但是有一个公认的标准'风格'是否使用longInt64

我想用最常用的一个。

所有来自Microsoft的文档和99.999%(左右)的在线代码都将使用long 。 请参阅C#参考中的数字数据types定义: http : //msdn.microsoft.com/en-us/library/exx3b86w.aspx

最后,这与使用stringString相同的问题。 通常,小写字母名称用于数字或字符等数值types,大写字母用于类别。 在C#中, Int64long值数据types的复杂数据types(包含字段,属性和方法的结构,请参阅文档)(请参阅文档)。 通常,除了调用该类的方法外,人们不使用Int64类,如Int64.Parse 。 所以你通常会find这样的东西:

 long variable = 9.5f; string text = "8.4"; long anotherVariable = Int64.Parse(text); 

对于这样的问题,你会得到很多不同的意见,因为他们是完全一样的东西。 所以这取决于你。 微软在文档和示例中总是使用longintshort 。 这只是VB.NET和C#中的别名。 所以我想这样使用它们会更好。

  • 而不是Int64
  • int而不是Int32
  • 而不是Int16

C#使用像long,int string这样的关键字作为.NETtypes的别名。

  • int = System.Int32
  • long = System.Int64
  • string = System.String

使用这些关键字的第一个参数是它带有语言,所以在编写语言时使用它。

使用这些关键字的第二个参数是,您不必using System; 在你的代码文件上面。

另一个好处是有人可以创build一个名为Int64的新types,并把它放在你的命名空间的某个地方(我知道…这将是疯狂的)。 如果您的旧代码使用Int64types,则旧代码可能会停止运行。 如果您的旧代码使用longSystem.Int64的别名)比它仍然可以正常工作。

你应该使用longintshort

我知道的一个例外是函数名称。 看看BitConverter.ToInt64 。

原因是在int64是CIL中没有定义long。

我认为这归结于清晰度与兼容性。 Int16Int32Int64shortintlong更清晰。 你只要看看Int16知道它的长度是16位。

我认为在大多数情况下,它会归结为个人偏好,但是如果你严格地说“C#”而不指定底层平台,我会有点不同。 如果您正在开发遵循C#标准的跨平台可移植性和“面向未来的”,那么“长”将是最好的方法,因为它是语言本身的实际构造。 “Int64”是框架中的实际结构(System.Int64)。