在C/C#/等中,你可以告诉编译器一个字面数字不是它看起来的样子(即float
代替double
,unsigned long
而不是int
:
var d = 1.0; // double
var f = 1.0f; // float
var u = 1UL; // unsigned long
Run Code Online (Sandbox Code Playgroud)
等等
有人能指出我这些的清单吗?我特意为short
或寻找后缀Int16
.
在C#中,以下类型推断有效:
var s = "abcd";
Run Code Online (Sandbox Code Playgroud)
但是,当变量是常数时,为什么不能推断出类型呢?
以下引发了编译时异常:
const var s = "abcd"; // <= Compile time error:
// Implicitly-typed local variables cannot be constant
Run Code Online (Sandbox Code Playgroud)