MSDN上查找了一下,NEW运算符不能重载。请问怎么实现?

解决方案 »

  1.   

     你不会从这个类里的方法去返回null么
      

  2.   

    无语,我是想NEW的时候用的,单独定义方法不是我想要的,有没有NEW的时候实现的。我看系统自带的好像是可以的。
      

  3.   

    你应该先看下ORM是什么东西,ORM操作返回的实体类对象,如果为null,说明数据库中不存在,而操作本身是封装的一个方法,根本不是自己新建对象。
      

  4.   


    谁跟你们自带有可以了。对你才是无语。基本的概念没弄清DataTable dt = new DataTable();这个不是NULL的吗?
      

  5.   


    这个
    大哥,咱们说的不是一个东西,跟ORM扯不上边。。我这是自己定义的模型。在数据库中有可能是几个表,初始化的时候判断的东西挺多的,所以才要返回一个NULL来判断是否初始化成功了。
      

  6.   

    new关键字永远不可能返回null,如果你要判断后确定是否返回一个对象的实例,或是null,那么就不能用new关键字,而应该用Create方法(方法名也可以更改)。例如:    public class User
        {
            //这是私有构造函数,不允许外部直接new
            User() { }
            //这是公开的Create方法,如果条件成功,则返回User对象,失败,则返回null
            public static User Create(string filter) { return null; }
        }使用时直接User.Create("条件");即可
      

  7.   

    new关键字永远不可能返回null,如果你要判断后确定是否返回一个对象的实例,或是null,那么就不能用new关键字,而应该用Create方法(方法名也可以更改)。例如:    public class User
        {
            //这是私有构造函数,不允许外部直接new
            User() { }
            //这是公开的Create方法,如果条件成功,则返回User对象,失败,则返回null
            public static User Create(string filter) { return null; }
        }使用时直接User.Create("条件");即可唉,果然只有这种方法吗?
      

  8.   


    谁跟你们自带有可以了。对你才是无语。基本的概念没弄清DataTable dt = new DataTable();这个不是NULL的吗?你从哪里得出来的null?? dt??
      

  9.   


    谁跟你们自带有可以了。对你才是无语。基本的概念没弄清DataTable dt = new DataTable();这个不是NULL的吗?无语了,你看看这dt会不会等 于null汗。。不要猜好不。。