首页 > 其他 > 详细

泛型约束

时间:2015-02-27 11:29:14      阅读:290      评论:0      收藏:0      [点我收藏+]

一共有5种不同的泛型约束

  • 值类型约束:要求泛型参数必须是值类型,例如int,short以及自定义的stuct等
    public class MyClass2<T>
        where T : struct//这个泛型类只接受值类型的泛型参数
    { 
    }
  • 引用类型约束:要求泛型参数必须是引用类型,例如string,object,以及自定义的class
    public class MyClass<T>
        where T:class//这个泛型类只接受引用类型的泛型参数
    { 
    }
  • 构造函数约束:要求泛型参数必须有构造函数
    public class MyClass3<T>
        where T : new()
    { 
    }
  • 接口约束:要求泛型参数必须实现某个接口
    public class MyClass4<T>
        where T : System.IComparable
    { 
    }
  • 基类约束:要求泛型参数必须继承某个基类
    public class MyClass5<T>
        where T : Customer
    { 
    }

泛型约束

原文:http://www.cnblogs.com/jooper/p/4302727.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!