c# – 允许函数接受泛型类型的设计模式
发布时间:2020-12-15 08:24:39 所属栏目:百科 来源:网络整理
导读:我有两节课: public abstract class UniformTpublic class UniformMatrix4 : UniformMatrix4 (到目前为止……将有更多实现不同类型的) 现在让我说我想编写一个接受任何统一对象的函数……但是我不能这样做,因为没有名为Uniform的类,只有通用的Uniform T.那
我有两节课:
public abstract class Uniform<T> public class UniformMatrix4 : Uniform<Matrix4> (到目前为止……将有更多实现不同类型的) 现在让我说我想编写一个接受任何统一对象的函数……但是我不能这样做,因为没有名为Uniform的类,只有通用的Uniform< T>.那么解决这个问题的最佳方法是什么? >制作统一< T>实现IUniform 解决方法
让你的方法也通用,你也很好.
请注意,如果需要,您始终可以选择在函数上使用所有泛型类型参数,如下所示: public void MyMethod<TUniform,T>(TUniform uniform) where TUniform: Uniform<T> {...} 只要有参数,编译器通常就会自己推断出类型参数,这样调用实际上就像C#源代码中的普通方法调用一样: UniformMatrix4 uniform; MyMethod(uniform); // the types of the generic functions are inferred (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |