如果基本类型是对象,为什么我们不能这样做呢?

Joa*_*nge -1 .net c#

所以对于复杂类型,我们可以写:

return new MyType ( 5 );
Run Code Online (Sandbox Code Playgroud)

但是为什么我们不能做类似的东西(为了一个对称):

return new int ( 5 );

return new Int64 ( 5 );
Run Code Online (Sandbox Code Playgroud)

我知道只提供无参数构造函数.这是什么原因?

Sam*_*uel 11

重点是什么?任何没有构造函数的.NET值类型都具有文字形式.如果它们没有文字形式,则不可能提供将其类型作为参数的构造函数.

既然你有文字,那么提供一个构造函数来获取文字是没有意义的.

没有文字,不可能
int i = new int(new int(new int(...)));
Run Code Online (Sandbox Code Playgroud) 用文字
int i = new int(5); // What is the point? Would the constructor do *anything*
                    // besides int i = 5?
Run Code Online (Sandbox Code Playgroud)