C#
文章平均质量分 60
Start2014
这个作者很懒,什么都没留下…
展开
-
C#中有趣的预处理指令
#define 和 #undef //存在给定名称的符号 //类似于变量声明,没有真正的值,只是存在而已 #define DEBUG //删除符号 #undef DEBUG 声明的符号不是实际代码的一部分,而只在编译器编译代码时存在。在C#代码中它没有任何意义。 如果符号不存在,#undef就没有任何作用。同样,如果符号存在,则#define也不起作用。 必须把#define 和 #原创 2014-03-02 14:00:14 · 1297 阅读 · 0 评论 -
C#中的弱引用
一般情况下实例化一个类或结构时,只要有代码引用它,就会形成强引用。 例如: Student stu=new Student(); 对此,垃圾回收器就不能收集该对象。 一般而言是没有问题的,因为可能需要访问stu对象,但是如果对象过大,并且不经常访问呢?此时就可以创建对象的弱引用。 弱引用运行创建和使用对象,但是垃圾回收器运行时,就会回收对象释放内存。但始终存在这样的风险:垃圾回收器在原创 2014-03-04 03:15:19 · 2115 阅读 · 1 评论 -
使用EditPlus工具进行简单的C#代码编译和测试
有时候,我们往往需要写一些简单的小案例或者进行一些简单代码的测试。如果每次都启动VS未免有些太费事了! 其实一些优秀的编辑器是可以自设定编译命令,来进行简单的代码编译的。 比如EditPlus。 首先我们来创建一个简单的C#文件。 打开EditPlus-文件-新建,发现里面没有可用的C#模版页。 那让我们来看看其他里面都有些什么? 找到C#了,先原创 2014-03-06 21:44:53 · 2010 阅读 · 0 评论 -
C#扩展类的另一种方式:扩展方法
一般情况下可以通过继承的方式扩展一个类产生特有的方法,这是在有类的源代码的前提下。如果没有源代码呢? 扩展方法是静态方法,是类的一部分,但实际上没有放在类的源码中。 假设有类MyClass需要一个方法Sum(int a,int b),需要创建一个静态类,把方法Sum()添加为一个静态方法。 public static class MyClassExtendsion { pu原创 2014-03-26 19:15:11 · 820 阅读 · 0 评论