是隐式转换:
        int a=10;
        //其实是经编译后为:int a=new int(10);        //明白了没有

解决方案 »

  1.   

    new 是合法的,但是是麻烦的
    所以有了这样一种使用方法
      

  2.   

    据我所知,好像C#将一些类定义为值类型,有些为引用类型,
    如int即为值类型,我们自己写的类为引用类型,所以才有区别,但不知值类型的类怎么声明。
    难道不是这个原因而是向 stardicky(章程)所说的隐式转换?
      

  3.   

    数值类型是在堆栈上创建的,而引用类型是在对上创建的
    int类型在初始化时就在堆栈上创建,大小是固定的,但引用类型在创建时只有在new以后才分配堆,大小是根据不同的类来定的,在new之前只是申明而已,并没有实例化,所以是不固定的。所以引用类型在创建实例时是要new的。个人理解,又不对之处望高手指教。
      

  4.   

    1、值类型(如int)是分配在堆栈(stack)中的,堆栈内存区域内保存着值类型的值,可以通过变量名来指代。
    2、引用类型(Object)是分配在堆(heap)中,当对象分配在堆中时,返回的是地址,地址被赋值给引用。