CLR Via C#读书笔记——接口约束【2010-01-09】

对于接口约束C#编译器会生成特定的IL指令,这些指令将导致直接在值类型上调用接口方法,不对其进行装箱。如果不使用接口约束,就没有其他方法让C#编译器生成这些IL指令,导致在值类型上调用接口方法始终需要进行装箱操作。

 

 

接口约束例子:

//参数T被约束为只支持实现了IComparable和IConvertible接口的类型。

private void RestrictRule<T>(T t) where T:IComparable,IConvertible { .......//相关代码 } 

你可能感兴趣的:(C#,读书,编译器,2010)