上一页 1 ··· 7 8 9 10 11 12 13 14 15 16 下一页
摘要: 捕获变量:捕获的是变量,而不是创建委托实例时它的值!!!! 1.捕获外部变量 运行结果如下: 首先,count 相对于匿名方法来说,是一个外部变量, 同时,方法内部定义的值类型是存储在栈上的,因此 count 是存储在栈上的, 那为什么在 MethodInvoker() 方法运行完之后, count 阅读全文
posted @ 2018-03-24 15:37 热敷哥 阅读(260) 评论(0) 推荐(0) 编辑
摘要: public class AppSettingsConfig { /// ////// public static int QueryKeyCodeUserInfoTimespan => Convert.ToInt32(AppSettingValue()); /// ////// ... 阅读全文
posted @ 2018-03-23 20:16 热敷哥 阅读(140) 评论(0) 推荐(0) 编辑
摘要: class Program { static void Main(string[] args) { /* * 不管是显示还是隐式转换,一种类型都只能出现一次 */ Console.WriteLine("*******************... 阅读全文
posted @ 2018-03-21 20:05 热敷哥 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 聊一聊C#的Equals()和GetHashCode()方法 博客创建一年多,还是第一次写博文,有什么不对的地方还请多多指教。 关于这次写的内容可以说是老生长谈,百度一搜一大堆。大神可自行绕路。 最近在看Jeffrey Richter的CLR Via C#,在看到GetHashCode()方法的时候 阅读全文
posted @ 2018-03-18 21:40 热敷哥 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 协变:派生类=>基类 假设有这样一个类: 但是由于我们知道是返回一个Person类的实例,所以返回类型 object 写在这里总会觉得很别扭,我们希望写成: 显然,这是错的!虽然这是错的,但这就是返回类型的协变性,只是非泛型接口和方法重载不支持这一特性. 如果一定要这样写,只能使用显示接口实现: 如 阅读全文
posted @ 2018-03-16 20:21 热敷哥 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 普通方法构造表达式树 利用Lambda表达式构造表达式树 将表达式树转换成可执行代码 阅读全文
posted @ 2018-03-16 10:00 热敷哥 阅读(122) 评论(0) 推荐(0) 编辑
摘要: Nullable<T> 内部实现了显示和隐式转换 显示转换: Nullable<int> nullable = new Nullable<int>(10); int x = (int)nullable; 隐式转换: Nullable<int> i = 100; 装箱拆箱: 阅读全文
posted @ 2018-03-15 10:25 热敷哥 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 值传递 传递的是变量在堆栈上的值的副本 值类型在堆栈上存的就是实际的值, 引用类型在堆栈上存的是一个地址,这个地址就是该引用类型在托管堆上存放的实际的值的地址 以修改文件为例, 值类型的值传递,就好比先复制一份该文件,然后再对复制后的文件进行修改 引用类型的值传递,就好比传递的是快捷方式的副本,然后 阅读全文
posted @ 2018-03-14 20:22 热敷哥 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 1.class 是引用类型, struct 是值类型 2.定义类用 class,定义结构体用 struct 3.结构体中,不能对字段或者属性进行初始化 4.class有默认的无参数的构造函数,但如果显示的定义了一个构造函数,编译器就不会再自动生成隐式的无参数的构造函数了;而struct,无论你是否显 阅读全文
posted @ 2018-03-13 09:41 热敷哥 阅读(1061) 评论(0) 推荐(0) 编辑
摘要: class Program { static void Main(string[] args) { Complex c1 = new Complex(1, 2); Complex c2 = new Complex(3, 4); Complex c3 = c1 + c2;... 阅读全文
posted @ 2018-03-12 16:42 热敷哥 阅读(137) 评论(0) 推荐(0) 编辑
上一页 1 ··· 7 8 9 10 11 12 13 14 15 16 下一页