C++ 11 的lambda expression(简称LB),在可以保证和inline expression同样应能的条件下,增加了参数功能和闭包功能,是我们写出简洁,明了,以维护代码的绝佳工具。应用时,为了避免代码重复和增加隐身类的数量,可用有名无型的LB变量。LB也可以赋值于std::func...
分类:
编程语言 时间:
2014-09-13 06:12:14
阅读次数:
403
本文主要记录自己对几个高级语法概念的理解:匿名函数、lambda表达式、闭包、装饰器。
这几个概念并非Python特有,但本文只限于用Python做说明。
1. 匿名函数
匿名函数(anonymous function)是指未与任何标识符绑定的函数,多用在functional
programming languages领域,典型应用场合:
1) 作为参数传给高阶函数(higher-or...
分类:
编程语言 时间:
2014-09-12 13:36:13
阅读次数:
344
Java 8已于2014年3月18日正式发布了,新版本带来了诸多改进,包括Lambda表达式、Streams、日期时间API等等。本文就带你领略Java 8的全新特性。本文由ImportNew网站的黄小非翻译自winterbe。原文作者Benjamin是Pondus软件公司的总工程师,原文内容如下。...
分类:
编程语言 时间:
2014-09-11 05:34:01
阅读次数:
466
自己闲着无聊写的,当然有些描述不是十分准确,毕竟一句话不能表达太多意思。委托:把方法当做参数进行传递。泛型:在类、方法中对使用的类型参数化。匿名方法:委托及调用委托的简化版。Lambda表达式:匿名方法的进一步进化。扩展方法:给现有类添加新的方法。LINQ: 将SQL方式的查询从数据库扩展到其它方面...
分类:
其他好文 时间:
2014-09-11 01:07:01
阅读次数:
190
你可以Lambda表达式去创建匿名的方法。但很多时候,这份方法可能是已经存在的,这时你可以使用函数引用。这样能够使代码结构更清晰。
我们知道,贪心算法里面,一个常见的步骤是排序。假设有下面的背包类:
class Package{
private int weight;
// ignore setter and getter
}
我们有个背包数组 Package[] ...
分类:
编程语言 时间:
2014-09-10 22:31:21
阅读次数:
239
Java 8发布有一段日子, 大家关注Java 8中的lambda可能更早, 对Java 8中这一最重要的语言变化也基本熟悉了。这篇文章将深入研究Java 8中的lambda特性以及Stream接口等, 讨论一些深层次的技术细节。
比如, 一个lambda表达式序列化反序列化后, 对捕获的上下文变量的引用的情况。 Lambda表达式递归。 类方法的引用和实例方法的引用的区别。 菱形继承的问题。 Stream接口的Lazy和eager模式。 Lambda的性能。...
分类:
编程语言 时间:
2014-09-10 14:17:50
阅读次数:
410
1.一步一步学c#(一):.NET体系结构2.一步一步学c#(二):核心c#3.一步一步学c#(三):对象和类型4.一步一步学c#(四):继承5.一步一步学c#(五):泛型6.一步一步学c#(六):数组7.一步一步学c#(七):运算符和强制类型转换8.一步一步学c#(八):委托,Lambda表达式和...
分类:
其他好文 时间:
2014-09-09 11:14:18
阅读次数:
201
(1)Lambda表达式“Lambda表达式”是一个匿名函数,它可以包含表达式和语句,并且可用于创建委托或表达式树类型。所有 Lambda 表达式都使用 Lambda 运算符=>,该运算符读为“goes to”。该 Lambda 运算符的左边是输入参数(如果有),右边包含表达式或语句块。Lambda...
分类:
Web程序 时间:
2014-09-07 17:13:05
阅读次数:
178
Java 8已于2014年3月18日正式发布了,新版本带来了诸多改进,包括Lambda表达式、Streams、日期时间API等等。本文就带你领略Java 8的全新特性。
本文由 ImportNew网站的黄小非 翻译自 winterbe。原文作者Benjamin是Pondus软件公司的总工程师,原文内容如下。
引用
Java并没有没落,人们很快就会发...
分类:
编程语言 时间:
2014-09-05 18:13:12
阅读次数:
334