11 2020 档案

摘要:1 背景动机 关于模块或者程序集初始化工作一直是C#的一个痛点,微软内部外部都有大量的报告反应很多客户一直被这个问题困扰,这还不算没有统计上的客户。那么解决这个问题,还有基于什么样的考虑呢? 在库加载的时候,能以最小的开销、无需用户显式调用任何接口,使客户做一些期望的和一次性的初始化。 当前静态构造 阅读全文
posted @ 2020-11-29 22:44 码客风云 阅读(1741) 评论(0) 推荐(5) 编辑
摘要:1.介绍 我们知道,我们要使一个类型支持foreach循环,就需要这个类型满足下面条件之一: 该类型实例如果实现了下列接口中的其中之一: System.Collections.IEnumerable System.Collections.Generic.IEnumerable<T> System.C 阅读全文
posted @ 2020-11-22 14:16 码客风云 阅读(1294) 评论(0) 推荐(1) 编辑
摘要:1、背景与动机 自C#1.0版本以来,我们要定义一个不可变数据类型的基本做法就是:先声明字段为readonly,再声明只包含get访问器的属性。例子如下: struct Point { public int X { get; } public int Y { get; } public Point( 阅读全文
posted @ 2020-11-20 16:06 码客风云 阅读(1896) 评论(0) 推荐(3) 编辑
摘要:C#9.0在11月10日已经正式发布。在这里我将C#9.0的一共16个新特性进行了汇总。新特性虽多,但本次这个版本主要落脚点还是放在了数据的简洁性和不可变性表达上。 1. init关键字 1.1 只初始化属性设置器 — init关键字 对象初始化方式对于创建对象来说是一种非常灵活和可读的方式,特别对 阅读全文
posted @ 2020-11-12 22:50 码客风云 阅读(4391) 评论(0) 推荐(5) 编辑

喜欢请打赏

扫描二维码打赏

支付宝打赏

点击右上角即可分享
微信分享提示