- 博客(3)
- 资源 (1)
- 收藏
- 关注
原创 如果你的编程语言没有变量捕获功能,如何实现闭包?
前一个贴子中,我简单回顾了C#2.0中的一些便利特性,包括闭包。现在,我们来看一下,如果没有变量捕获的支持,如何实现闭包。其实,思路不复杂。想一想变量捕获的本质,就明白,它就是对被捕获的变量——局部的或对象上的——作了一层引用而已。那么,如果编程语言不支持这种特性,代替的最简单方法,也就是传递一个对象,其中包含一个成员变量,用这个来代替变量捕获时捕获的局部变量。对于非函数局部变量的捕获,比如对一个
2012-11-24 18:37:53 705
原创 C# 2.0 中的三个匿名函数特性
C# 2.0的特性中,有三个非常好用的特性。一是delegate关键字可以用来写匿名函数。二是有Func和Action这两个类库中的泛型委托能用来匹配函数的类型。三是captured variable,也就是匿名函数中能捕获当前运行环境中的变量,比如函数的局部变量。以下代码演示了这三个特性的使用:protected void VerifyDeletedNodes(){ Lis
2012-11-20 20:33:20 967
原创 面向对象的JavaScript编程读后感
这几天在读凌大侠的《面向对象的JavaScript编程》。面向对象编程,我在大一就开始学习了。在分支、循环、函数调用、变量、结构体、指针、函数指针以及malloc这些基石之上,从封装到继承到多态,从组合到接口到设计模式,从map到filter到reduce,处处彰显着程序设计的魅力。另一方面,JavaScript也是我在大一学习的一门编程语言。之前在高三时候在老师的悉心教导之下学习
2012-11-11 16:57:27 615
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人