this是什么? this 是在运行时进行绑定的,并不是在编写时绑定,它的上下文取决于函数调用时的各种条件。this 的绑定和函数声明的位置没有任何关系,只取决于函数的调用方式。当一个函数被调用时,会创建一个活动记录(有时候也称为执行上下文)。这个记录会包含函数在哪里被调用(调用栈)、函数的调用方法 ...
分类:
编程语言 时间:
2017-12-08 01:24:58
阅读次数:
202
本质上也是函数的另一种表现形式,为其它函数丰富其功能,装饰其他函数,附加功能 在不改变被装饰的函数的源代码,而且不改变被装饰的函数的调用方式,因此被装饰的函数感知不到装饰器函数的存在 分解装饰器 函数即变量 高阶函数 嵌套函数 ...
分类:
编程语言 时间:
2017-12-02 17:36:06
阅读次数:
138
1、装饰器的定义 装饰器的本质就是函数,用来装饰其它函数,就是为其它函数添加附加功能。 装饰器原则如下: 不能修改被装饰的函数的源代码 不能修改被装饰的函数的调用方式 2、实现装饰器知识储备 函数即变量 高阶函数 把一个函数名当作实参传递给另外一个函数(在不修改被装饰函数源代码的情况下为其添加功能) ...
分类:
编程语言 时间:
2017-11-28 01:44:00
阅读次数:
199
装饰器: 定义:本质是函数,功能:(装饰其他函数)就是为其他函数添加附加功能; 原则:1、不能修改被装饰函数的源代码 2、不能修改被装饰的函数的调用方式 实现装饰器知识储备: 1、函数即“变量” 2、高阶函数 3、嵌套函数 高阶函数+嵌套函数 =》装饰器 匿名函数:不需要起名字(内存回收) ...
分类:
编程语言 时间:
2017-11-27 18:46:33
阅读次数:
127
装饰器 定义:本质是函数,(装饰其他函数)就是为其他函数添加附加功能。原则:1.不能修改被装饰的函数的源代码 2.不能修改被装饰的函数的调用方式实现装饰器的知识储备: 1.函数即“变量” 2.高阶函数(满足下列条件之一就是高阶函数) a:把一个函数名当作形参传给另一个函数(在不修改被装饰函数源代码的 ...
分类:
编程语言 时间:
2017-11-21 19:48:17
阅读次数:
244
#include<stdio.h> #include<math.h>//函数的调用方式:自右向左int main(){ int f(int a, int b); int i = 2, p; p = f(i, ++i); //关键点 printf("%d\n", p); while (1); retu ...
分类:
其他好文 时间:
2017-11-13 11:11:38
阅读次数:
164
装饰器通过装饰器可以为函数添加附加功能。通过修改函数本身也可以实现增加功能,但是通过装饰器还有下面2个好处。装饰器的2个原则:不改变被装饰函数的源代码不改变被装饰函数的调用方式遵循了上面2个原则,我们可以在为函数添加附加功能的时候,不必去破坏已有的稳定的代码和..
分类:
编程语言 时间:
2017-11-08 14:55:30
阅读次数:
197
装饰器: 定义:本质是一个函数,装饰其他的函数,就是为其他函数添加附加功能。 原则:1.不能修改被装饰的函数的源代码 2.不能修改被装饰的函数的调用方式 实现装饰器的知识储备: 1.函数即“变量” 2.高阶函数 3.嵌套函数 高阶函数+嵌套函数=》装饰器 装饰器的一个例子: import time ...
分类:
其他好文 时间:
2017-11-04 18:03:17
阅读次数:
117
闭包:内部函数使用外部函数中的变量,这种情况下就称这是一个闭包。 装饰器:在不改变函数的调用方式的情况下,给函数的前后添加新的功能。 装饰器的固定结构: 装饰器的例子: 概念:开放封闭原则 开放是指:对扩展是开放的 封闭是指:对修改是封闭的 ...
分类:
其他好文 时间:
2017-11-02 20:10:17
阅读次数:
182
1.装饰器1)本质就是函数,(装饰其他函数),为其他函数添加附加功能2)原则:1.不能修改被装饰的函数源代码2.不能修改被装饰的函数的调用方式实现装饰器知识储备:1.函数即”变量“2.高阶函数3.嵌套函数高阶函数+嵌套函数=装饰器importtimedeftrrm(fuc):#trrm(test1)
defcod(*args,..
分类:
编程语言 时间:
2017-10-26 15:34:51
阅读次数:
155