摘要:LAMDA表达式 (input parameters) => {statement;} (input parameters) => {statement;} (input parameters) => {statement;} (input parameters) => {statement;} L 阅读全文
显示接口实现
2017-06-04 17:04 by Dirichlet, 211 阅读, 0 推荐, 收藏, 编辑
摘要:显示接口实现用途: 1. 对象实现的两个接口中有同名函数。 2.显示接口没有修饰符,只能通过接口访问。 阅读全文
异常设计总结
2017-06-04 17:03 by Dirichlet, 312 阅读, 0 推荐, 收藏, 编辑
摘要:0. 异常的优点 a. 有堆栈信息,利于定位程序故障。 b. 程序显得整洁,是的正常的业务逻辑和异常处理分开。返回值形式会容易出现层层迭代,返回值检查和正常逻辑混在一起。 c. 异常处理部分可以用于确保资源的释放。Finally, Close 1. 抛出异常 设计一个对外的接口,怎么抛出以及什么时候 阅读全文
COM线程单元
2017-06-04 17:03 by Dirichlet, 308 阅读, 0 推荐, 收藏, 编辑
摘要:节选自C#高级编程 不管是单线程单元还是多线程单元,一个线程只能属于一个单元。 1) 单线程单元(apartment, 寓所,套间) 单线程单元与它拥有的线程是一对一的关系。COM对象在编写时不是线程安全的,也就是说编写COM对象时可以不考虑线程安全,COM库通过消息处理机制帮助实现线程同步。 2) 阅读全文
.Net中多线程类的使用和总结
2017-06-04 17:03 by Dirichlet, 928 阅读, 0 推荐, 收藏, 编辑
摘要:lock, Monitor, Thread, Join, BackGroundWorker. 消费者和生产者。Async 委托Invoke TypeHandle中BlockIndex。 http://msdn.microsoft.com/zh-cn/library/ms173179(v=vs.80) 阅读全文
避免构造/析构函数调用虚函数(转)
2017-06-04 17:02 by Dirichlet, 384 阅读, 0 推荐, 收藏, 编辑
摘要:转自http://hi.baidu.com/richiechyi/item/0f0fe3391443e389f5e4ad91 不要在类的构造或者析构函数中调用虚函数,因为这种调用不会如你所愿,即使成功一点,最后还会使你沮丧不已。如果你以前是一个Java或者C#程序员,请密切注意本节的内容-这正是C+ 阅读全文
单例模式完整解析
2017-06-04 17:02 by Dirichlet, 261 阅读, 0 推荐, 收藏, 编辑
摘要:volatile, static readonly, double check 直到对象要求产生一个实例才执行实例化;这种方法称为"懒实例化"。懒实例化避免了在应用程序启动时实例化不必要的 singleton。 1. 但是,这种实现的主要缺点是在多线程环境下它是不安全的。如果执行过程的不同线程同时进 阅读全文
正则表达式
2017-06-04 17:00 by Dirichlet, 209 阅读, 0 推荐, 收藏, 编辑
摘要:用途: 1. 判断给定的整个字符串是否满足某pattern。//Regex.IsMatch 2. 在给定的整个字符串中找出满足某pattern的所有字串。给定字符串里是否存在某字串满足某pattern。//Regex.Matchs,Regex.IsMatch 上述pattern就是正则表达式。 任何 阅读全文
序列化与反序列化
2017-06-04 16:59 by Dirichlet, 301 阅读, 0 推荐, 收藏, 编辑
摘要:using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Xml.Serialization; using System.IO; using System.Gl 阅读全文
object.Equals与object.ReferenceEquals方法
2017-06-04 16:58 by Dirichlet, 620 阅读, 0 推荐, 收藏, 编辑
摘要:object.Equals方法表达的是语义判等,不一定是引用判等。 object.ReferenceEquals方法是肯定是引用判等。 怎么实现一个对象的值语义的 Equals方法?实验。 MyClass bool Equals(MyClass other) { // 1. other==null? 阅读全文