首页 > 代码库 > C# 高效编程笔记2
C# 高效编程笔记2
C# 高效编程笔记2
1.理解GetHashCode()的陷阱
(1)作用:作为基于散列集合定义键的散列值,如:HashSet<T>,Dictionary<K,V>容器等
(2)重载GetHashCode()的规则:
如果两个对象相等,那么其散列值也应相等;对于任何一个对象,其GetHashCode()必须保持不变;对于所有输入,散列函数应该在所有整数中按照随机分布生成散列码.
2.推荐使用查询语句而不是循环
查询语句可以让程序的逻辑表达式由"命令式"转为"声明式",更加清晰的表达意图
3.避免在API中使用转换操作符
4.使用可选参数减少方法重载的数量
5.短小方法的优势-内联(inline)
内联:虚方法和包含try/catch代码块不会被内联
不要内联的指定方式:[MethodImpl(MethodImplOptions.NoInling)]
6.推荐使用成员初始化器而不是赋值语句
(1)成员初始化器在其构造函数,基类构造函数之前执行
(2)避免使用成员初始化器的情况:
要初始化为0或null;要对同一变量执行不同的初始化方法;需要进行异常处理
7.正确得初始化静态成员变量
8.尽量减少重复的初始化逻辑
9.使用using和try/finally清理资源
非托管资源类型必须显式使用IDisposable接口Dispose()来释放
10.避免创建不必要的对象
C# 高效编程笔记2
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。