-4

我想知道一些看起来很愚蠢的东西,但 C# 对每种类型的大写字母都有一个定义:

int -> Int32 , double -> Double , string -> String , etc..

为什么没有像其他 .Net 组件var那样定义Var ?

提前致谢。

4

2 回答 2

4

var是一个没有可映射原始类型的关键字。int, double, 等都是具有原始映射的关键字。

来自 msdn:

int i = 123;

当整数文字没有后缀时,它的类型是第一个可以表示其值的类型:int、uint、long、ulong。在本例中,它的类型为 int。

http://msdn.microsoft.com/en-us/library/vstudio/5kzh1b5w.aspx

var之所以特殊,是因为它表示的实际类型是类型推断的。

从 Visual C# 3.0 开始,在方法范围内声明的变量可以具有隐式类型 var。隐式类型的局部变量是强类型的,就像您自己声明了类型一样,但编译器确定类型。i 的以下两个声明在功能上是等价的......

var i = 10; // implicitly typed
int i = 10; //explicitly typed

http://msdn.microsoft.com/en-us/library/bb383973.aspx

于 2013-09-16T15:12:36.127 回答
3

int, double, stringandvar都是关键字,关键字不大写,然而System.Int32, System.Double,System.String都是 Types,Types 都是大写的

于 2013-09-16T15:13:28.320 回答