改善您的C#程序系列(8)-静态构造函数
(译注:initializer在上文中译为了“初始化器”,实在不好听,本文中全部改译为:“预置方法”)你应该知道,在一个类型的任何实例初始化以前,你应该初始化它的静态成员变量。在里C#你可以使用静态的预置方法和静态构造函数来实现这个目的。一个类的静态构造函数是一个与众不同的,它在所有的方法,变量或者属性访问前被执行。你可以用这个函数来初始化静态成员变量,强制使用单件模式,或者实现其它任何在类型的实例可用前应该完成的工作。你不能用任何的实例构造函数,其它特殊的私有函数, 或者任何其它习惯方法来...
改善您的C#程序系列(7)-初始化器
(译注:根据我个人对文章的理解,我把initializer译为:初始化器,它是指初始化语法,也就是在一个类里声明变量的同时,直接创建实例值的方法。例:object m_o = new object();如果这段代码不在任何函数内,但在一个类里,它就是一个初始化器,而不管你是把它放在类的开始还以结尾。)一些类经常不只一个构造函数。时间一长,就难得让它的成员变量以及构造函数进行同步了。最好的确保这样的事不会发生的方法就是:在声明就是的时间就直接初始化,而不是在每个构造函数内进行赋值。而且你应该使用初始化器语法同时...
改善您的C#程序系列(6)-垃圾回收
垃圾回收器(GC)为你控制托管内存。不像本地运行环境,你不用负责对内存泄漏,不定指针,未初始化指针,或者一个其它内存管理的服务问题。但垃圾回收器前不是一个神话:你一样要自己清理。你要对非托管资源负责,例如文件句柄,数据链接,GDI+对象,COM对象,以及其它一些系统对象。这有一个好消息:因为GC管理内存,明确的设计风格可以更容易的实现。循环引用,不管是简单关系还是复杂的网页对象,都非常容易。GC的标记以及严谨的高效算法可以检测到这些关系,并且完全的删除不可达的网页对象。GC是通过对从应用...
C#中值为NULL时计算出错处理方法
static void Main(string[] args) { Nullable<int> x1 = GetNullableType();//可空结构 if (x1.HasValue)//判断是否有值,也就是是否为null { Console.WriteLine("x1有值得{0}", x1.Value); //获取value } else { Console.WriteLine("x1无值."); } int? x2 = 0; int? x3 = x1 + x2;//两个运算数据一个为null则结果为null int y1 = x3 ?? 1;//结合运算符,如果??前的数据...
删除DataGridView行:了索引1处没有值
DataGridView 用DATASOURCE绑定数据后的删除行的方法(不删除数据库中数据,只删除DataGridView ) private void btnDeleteCurrentRow_Click(object sender, EventArgs e) { List<DB.Item> list = (List<DB.Item>)dataGridView1.DataSource; List<DB.Item> selectList = new List<DB.Item>(); for (int i = dataGridView1.SelectedRows.Count - 1; i >= 0; i--) { selectList.Add((DB.Item)dataGridVi...
百度HR美女年会惊艳(图)
1月9日 上周末百度年会上一个普通的百度HR(人力资源)女孩的照片,引发了数十万网友在微博上的围观。北京时间2012年1月7日,百度公司举办了公司内部年会。在年会后,一位长相清新漂亮的女员工 刘冬 在微博上晒出来自己年会中的照片。很多网友看到后惊呼“天人”,纷纷转发。在今天上午笔者看到刘冬微博的时候,她还之后上千个关注者(粉丝),几个小时之后,刘冬的粉丝已经增长到27000余人,并且还在不断增加。刘冬面对网友的关注在微博中留言表示:“有点受宠若惊的感觉是真的 很多话找不到合适的...
解决qq经常假死
在使用QQ的过程中,qq经常假死,不动不动或者是黑屏,几几十秒才出来。解决qq经常假死:看看你的自定义表情吧,是不是有太多的图片了,删除自定义表情,留下一些常用的就行了。
修改谷歌浏览器缓存目录
用过Chrome谷歌浏览器的人都知道,Chrome有一个非常不人性化的地方就是不能更改安装目录,默认只能安装到系统分区(所以很多同学使用绿色版、便携版的Google Chrome浏览器),而且其缓存文件夹也都默认位于系统分区。如果缓存文件比较多,不及时清理的话会占用的硬盘空间,并造成大量文件碎片,但是在Chrome的首选项里却并没有设置缓存目录这一选项。网上有种通过设置快捷方式参数的办法来改变谷歌google chrome浏览器的缓存文件夹位置,不过在Win7下有比这个更方便的方法。首先找到Chrome浏览器的缓存文件目录。...
SQL中group by的用法
首先先贴两条sql,大家看看有啥区别view plainselect * from all_txt A where id=(SELECT id from all_txt view plainwhere A.key_value = key_value ORDER BY release_time DESC limit 1); view plainselect * from (select *,max(release_time) as timea view plainfrom all_txt group by key_value order by release_time desc) a order by timea desc; 然后说明下表的重要字段为三个id,key_value,release_time作用是取每个相同key_value中release_time最新的...
