![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
格物致知 《Effective C#》读书笔记
文章平均质量分 53
崔鹏飞
但行好事 莫问前程
展开
-
格物致知 《Effective C#》读书笔记--验证二进制兼容性
昨天读了《Effective C#》的第一个条款“使用属性代替可访问的数据成员”,讲到要把公有字段修改为私有字段,并用公有属性把它封装起来。这一点不难理解,不过里面提到了一个关于二进制兼容性的问题,很是有趣,今天来验证一下。验证思路:创建一个类库内有一个public的类,该类内有一个public的字段。另外创建一个WinForm程序去读区该字段并显示。然后修改类库中的字段为属性。再原创 2009-02-18 13:27:00 · 1498 阅读 · 2 评论 -
格物致知--《Effective C#》读书笔记--验证接口引用指向装箱后的值类型时无需拆箱
欲验证的结论:接口引用指向装箱后的值类型时无需拆箱。代码如下: interface SomeInterface { void MethodInInterface(); } struct OneValueType原创 2009-07-29 09:01:00 · 835 阅读 · 0 评论 -
格物致知 《Effective C#》读书笔记--验证类型转换
as看起来很好用的样子,不会抛出异常,只要根据返回值是否为null来做不同的处理就可以了。但是它也不是万金油,以下的情况as就不适用:①值类型比如: double d = 100.0;int valueType = d as int;原创 2009-05-31 19:02:00 · 2193 阅读 · 0 评论 -
格物致知--《Effective C#》读书笔记--验证四种判等方式
①Object的静态方法ReferenceEquals: 只适用于判断两个引用是否指向同一个实例,不适用于值类型(或者说用于值类型是没意义的,因为永远返回false)。如下: TestEqual te = new TestEqual(); bool b1= object.ReferenceEquals(te,te); bool b2 = object.R原创 2009-07-19 22:40:00 · 1016 阅读 · 0 评论