C#
lijing_hi
这个作者很懒,什么都没留下…
展开
-
[C#] 谨慎使用DynamicInvoke
Delegate类提供了一个变参接口DynamicInvoke(params object[] args),可以在委托的具体类型不可知的情况下通过反射来进行委托调用。很方便,但由于变参,而且使用了反射,对性能有极大的影响。原创 2013-09-22 09:34:44 · 10653 阅读 · 1 评论 -
[C#] 委托与方法组
在编写委托相关代码,尤其是泛型委托相关代码的时候,经常会遇到下面这种问题:定义一个委托类型:public delegate void TestDelegate(T arg);定义一个测试用的类,及方法:public class TestClass{ public void TestFunc4Delegate(int arg){} publi原创 2013-09-22 09:06:12 · 4706 阅读 · 0 评论 -
[C#] 利用部分方法添加调试代码
编写游戏代码的时候经常需要在开发过程中多写一些调试代码,这些代码到了游戏发布期有要都注释掉或者删除掉,一不留神残余代码还会对游戏发布版本的效率造成负面影响。这样就需要找一种有效手段来控制这样的代码。利用C#的部分类和部分方法就可以将调试代码单独独立成代码文件,而且发布期只需要把这些独立出来的代码文件屏蔽掉,原始代码中调用的部分自动就会被编译器忽略,而发布过程结束后,将屏蔽解除掉,便有可以进入下原创 2013-09-22 09:16:16 · 1506 阅读 · 0 评论 -
[C#] 合理利用扩展方法的“污染”特性
C#的扩展方法功能使我们可以在没有源代码的情况下对一个类的功能进行扩展,虽然有一些限制(比如,只能是实例方法,只能访问被扩展类的公有成员等)但不失为一个增强代码灵活度的好机制。原创 2013-09-22 09:25:14 · 1510 阅读 · 0 评论