递归函数实在一个函数通过名字调用自身的情况下构成的。 这里使用的是命名函数表达式的方法实现递归,将这个函数赋值给 factorial 。这样即使在使用过程中对变量进行修改,也不会影响已赋值的递归函数进行调用,保证了代码的安全性。这种方式在严格模式和非严格模式下都适用。 ...
分类:
其他好文 时间:
2018-11-12 12:08:21
阅读次数:
195
在讲原理之前,首先介绍静态联编和动态联编: 静态联编:再编译阶段确定程序执行的代码,比如普通的变量定义int a = 10,以及函数重载等 动态联编:在程序运行过程中确定程序执行的代码,比如条件判断语句 多态的原理: 当一个类具有虚函数时,编译器会自动为这个类在全局区中的常量区添加一个虚函数表,这个 ...
分类:
编程语言 时间:
2018-11-11 15:58:48
阅读次数:
127
javaScript函数立即执行《1》 函数立即执行,常见两种写法: >>> (function(){ })() >>> (function(){ }()) 函数声明、函数表达式、匿名函数 >> 函数声明:function fnName () {…};使用function关键字声明一个函数,再指定一 ...
分类:
编程语言 时间:
2018-11-11 12:51:34
阅读次数:
212
有时候需要匹配linux中的通配符,例如*和?,它们的含义为: *:匹配0个或多个字符; ?:匹配任意单个字符。 这和正则表达式中含义不一样,在正则表达式中: *:匹配前一个字符0次或者多次; ?:匹配前一个字符1次。 这时候可以使用下面的函数,s表示需要匹配的字符串,p表示含有通配符的字符串。 ...
分类:
编程语言 时间:
2018-11-10 20:06:20
阅读次数:
199
RISC-V的确是个好东西,可是,免费的东西往往需要付出代价才能得到了,最近遇到了一个算法中的问题,追了好久,最终追到了这个库函数中,没想到,这个库函数居然还隐藏着一些猫腻。值得记下来啊。 首先上一个在X86平台下的例子: 1 #include <stdio.h> 这个是编译器的库函数,表示要获取你 ...
分类:
其他好文 时间:
2018-11-09 21:00:42
阅读次数:
645
链接 "P3532 [POI2012]ODL Distance" 设$f_{i,j}$表示他给定的函数,$g_i$表示$i$的质因数个数 那么$$f_{i,j}=g_{\frac {i j}{gcd^2}}$$ 考虑线性筛$g_i$。 那么对于每一个数$w_i$考虑枚举他的因子作为$gcd$。 也就 ...
分类:
其他好文 时间:
2018-11-07 20:13:07
阅读次数:
153
声明一个函数: var x=1; foo(); function foo() { console.log(x);//1 } myfun();//报错 定义一个函数表达式: var myfun=myfoo() { console.log(x); } 函数作为JavaScript的一等公民,声明函数时会 ...
分类:
编程语言 时间:
2018-11-07 11:30:13
阅读次数:
144
匿名函数 f=@(arglist)anonymous_function, 如:f=@(x,y)x+y, 则 f(1,2)=3。注意匿名函数后面的函数表达式不需要引号。 对于数组,注意匿名函数中(.)运算符的应用, 如: f=@(x,y) x.^2+y.^2 匿名函数可以使用前面定义过的变量 但是需要 ...
分类:
其他好文 时间:
2018-11-01 18:26:06
阅读次数:
203
C++ 虚函数 虚函数 基类中使用virtual关键字声明的函数,称为虚函数。 虚函数的实现,通过虚函数表来实现的。即V table 这个表中有一个类,用于储存虚函数的地址。解决其继承,覆盖的问题,用于保证其真实反映的函数。这样有虚函数的实例,将会储存在这个实例的内存中。即用父类的指针,操作子类的时 ...
分类:
编程语言 时间:
2018-11-01 00:58:24
阅读次数:
186
多态中的虚函数表是在运行时创建的还是编译时创建的? 答:虚函数表在编译的时候就确定了,而类对象的虚函数指针vptr是在运行阶段确定的,这是实现多态的关键 (类的函数的调用并不是在编译时就确定的,而是在运行时才确定的,由于编写代码的时候并不能确定被调用的是基类的函数还是哪个派生类的函数,所以声明为虚函 ...
分类:
其他好文 时间:
2018-10-31 14:00:18
阅读次数:
203