函数声明

Java8 Lambda表达式教程

生来就可爱ヽ(ⅴ<●) 提交于 2020-01-03 16:45:05
转自:http://blog.csdn.net/ioriogami/article/details/12782141 1. 什么是λ表达式 λ表达式本质上是一个匿名方法。让我们来看下面这个例子: public int add(int x, int y) { return x + y; } 转成λ表达式后是这个样子: (int x, int y) -> x + y; 参数类型也可以省略,Java编译器会根据上下文推断出来: (x, y) -> x + y; //返回两数之和 或者 (x, y) -> { return x + y; } //显式指明返回值 可见λ表达式有三部分组成:参数列表,箭头(->),以及一个表达式或语句块。 下面这个例子里的λ表达式没有参数,也没有返回值(相当于一个方法接受0个参数,返回void,其实就是Runnable里run方法的一个实现): () -> { System.out.println("Hello Lambda!"); } 如果只有一个参数且可以被Java推断出类型,那么参数列表的括号也可以省略: c -> { return c.size(); } 2. λ表达式的类型(它是Object吗?) λ表达式可以被当做是一个Object(注意措辞)。λ表达式的类型,叫做“目标类型(target type)”。λ表达式的目标类型是“函数接口

Delphi编码规范

梦想与她 提交于 2020-01-03 01:52:47
规范 --======== 以下是在之前的公司与别人共同参与制定的Delphi开发规范(5年前了,那时用的还是Delphi7,部分规则可能有些过时,但不整理了,觉得有用的人,自己整理成适合自己的开发规范吧), 目 录 一、序言 二、通用源代码格式规则 2.1 缩格 2.2 页边空格 2.3 Begin…End 配对 2.4代码文件中通用符号含义 2.5注释写法 三、Object Pascal 3.1 括号 3.2 保留字和关键字 3.3 过程和函数(例程) 3.3.1 命名/格式化/声明 3.3.2 形式参数 3.3.2.1 格式化 3.3.2.2 命名 3.3.2.3 参数的排序 3.3.2.4 常量参数 3.3.2.5 名称的冲突 3.4 变量 3.4.1 变量的命名和格式 3.4.2 局部变量 3.4.3 全局变量的使用 3.5 类型 3.5.1 大写约定 3.5.1.1 浮点指针类型 3.5.1.2 枚举类型 3.5.1.3 变数和ole变数类型 3.5.2 结构类型 3.5.2.1 数组类型 3.5.2.2 记录类型 3.6 语句 3.6.1 if 语句 3.6.2 case 语句 3.6.2.1 一般性话题 3.6.2.2 格式 3.6.3 while 语句 3.6.4 for 语句 3.6.5 repeat 语句 3.6.6 with 语句 3.6.6.1 一般话题

php 编码规范

天大地大妈咪最大 提交于 2020-01-03 01:52:26
一、文件格式 1. 对于只含有 php 代码的文件,我们将在文件结尾处忽略掉 "?>" 。这是为了防止多余的空格或者其它字符影响到代码。 例如: <?php $foo = 'foo'; 2. 缩进应该能够反映出代码的逻辑结果,尽量使用四个空格,禁止使用制表符TAB,因为这样能够保证有跨客户端编程器软件的灵活性。 例如: if (1 == $x) { $indented_code = 1; if (1 == $new_line) { $more_indented_code = 1; } } 3. 变量赋值必须保持相等间距和排列。 例如: $variable = 'demo'; $var = 'demo2'; 4. 每行代码长度应控制在80个字符以内,最长不超过120个字符。因为 linux 读入文件一般以80列为单位,就是说如果一行代码超过80个字符,那么系统将为此付出额外操作指令。这个虽然看起来是小问题,但是对于追求完美的程序员来说也是值得注意并遵守的规范。 5. 每行结尾不允许有多余的空格。 二、命名约定 1. 类文件都是以“.class.php“为后缀,且类文件名只允许字母,使用驼峰法命名,并且首字母大写,例如:DbMysql.class.php 。 2. 配置和函数等其他类库文件之外的文件一般是分别以“.inc.php“和”.php“为后缀

PHP编码规范

核能气质少年 提交于 2020-01-03 01:51:55
一、文件格式 1. 对于只含有 php 代码的文件,我们将在文件结尾处忽略掉 "?>" 。这是为了防止多余的空格或者其它字符影响到代码。 例如: <?php $foo = 'foo'; 2. 缩进应该能够反映出代码的逻辑结果,尽量使用四个空格,禁止使用制表符TAB,因为这样能够保证有跨客户端编程器软件的灵活性。 例如: if (1 == $x) { $indented_code = 1; if (1 == $new_line) { $more_indented_code = 1; } } 3. 变量赋值必须保持相等间距和排列。 例如: $variable = 'demo'; $var = 'demo2'; 4. 每行代码长度应控制在80个字符以内,最长不超过120个字符。因为 linux 读入文件一般以80列为单位,就是说如果一行代码超过80个字符,那么系统将为此付出额外操作指令。这个虽然看起来是小问题,但是对于追求完美的程序员来说也是值得注意并遵守的规范。 5. 每行结尾不允许有多余的空格。 二、命名约定 1. 类文件都是以“.class.php“为后缀,且类文件名只允许字母,使用驼峰法命名,并且首字母大写,例如:DbMysql.class.php 。 2. 配置和函数等其他类库文件之外的文件一般是分别以“.inc.php“和”.php“为后缀

php编码规范

£可爱£侵袭症+ 提交于 2020-01-03 01:51:36
一、文件格式 1. 对于只含有 php 代码的文件,我们将在文件结尾处忽略掉 "?>" 。这是为了防止多余的空格或者其它字符影响到代码。 例如: <?php $foo = 'foo'; 2. 缩进应该能够反映出代码的逻辑结果,尽量使用四个空格,禁止使用制表符TAB,因为这样能够保证有跨客户端编程器软件的灵活性。 例如: if (1 == $x) { $indented_code = 1; if (1 == $new_line) { $more_indented_code = 1; } } 3. 变量赋值必须保持相等间距和排列。 例如: $variable = 'demo'; $var = 'demo2'; 4. 每行代码长度应控制在80个字符以内,最长不超过120个字符。因为 linux 读入文件一般以80列为单位,就是说如果一行代码超过80个字符,那么系统将为此付出额外操作指令。这个虽然看起来是小问题,但是对于追求完美的程序员来说也是值得注意并遵守的规范。 5. 每行结尾不允许有多余的空格。 二、命名约定 1. 类文件都是以“.class.php“为后缀,且类文件名只允许字母,使用驼峰法命名,并且首字母大写,例如:DbMysql.class.php 。 2. 配置和函数等其他类库文件之外的文件一般是分别以“.inc.php“和”.php“为后缀

PHP编码规范

拈花ヽ惹草 提交于 2020-01-03 01:51:19
一、文件格式 1. 对于只含有 php 代码的文件,我们将在文件结尾处忽略掉 "?>" 。这是为了防止多余的空格或者其它字符影响到代码。 例如: <?php $foo = 'foo'; 2. 缩进应该能够反映出代码的逻辑结果,尽量使用四个空格,禁止使用制表符TAB,因为这样能够保证有跨客户端编程器软件的灵活性。 例如: if (1 == $x) { $indented_code = 1; if (1 == $new_line) { $more_indented_code = 1; } } 3. 变量赋值必须保持相等间距和排列。 例如: $variable = 'demo'; $var = 'demo2'; 4. 每行代码长度应控制在80个字符以内,最长不超过120个字符。因为 linux 读入文件一般以80列为单位,就是说如果一行代码超过80个字符,那么系统将为此付出额外操作指令。这个虽然看起来是小问题,但是对于追求完美的程序员来说也是值得注意并遵守的规范。 5. 每行结尾不允许有多余的空格。 二、命名约定 1. 类文件都是以“.class.php“为后缀,且类文件名只允许字母,使用驼峰法命名,并且首字母大写,例如:DbMysql.class.php 。 2. 配置和函数等其他类库文件之外的文件一般是分别以“.inc.php“和”.php“为后缀

JavaScript 函数表达式

℡╲_俬逩灬. 提交于 2020-01-03 01:00:13
  JavaScript中创建函数主要有两种方法:函数声明和函数表达式。这两种方式都有不同的适用场景。这篇笔记主要关注的是函数表达式的几大特点以及它的使用场景,下面一一描述。   主要特点 可选的函数名称   函数名称是函数声明的必需组成部分,这个函数名称相当于一个变量,新定义的函数会复制给这个变量,以后函数的调用都需要通过这个变量进行。而对于函数表达式来说,函数的名称是可选的,例如下面的例子: var sub = function(a1,a2){ return a1-a2; }   这个例子中函数表达式没有名称,属于匿名函数表达式。再看下面的例子: var sub = function f(a1,a2){ return a1-a2; } console.log(f(5,3)); //错误调用方式 console.log(sub(5,3)); //正确调用方式   在这个例子中,函数表达式的名称为f,这个名称f实际上变成了函数内部的一个局部变量,并且指代函数对象本身,在函数递归的时候有很大用处,后面会详细讲到。 在执行阶段创建(区别于函数声明)   这个特点是函数表达式明显区别于函数声明的地方。   解释器在解析JavaScript代码时对于这两种方式并不是一视同仁的。解释器会首先读取函数声明,并使其在执行任何代码之前可用;而对于函数表达式,则必须等到解释器执行到它所在的代码行

GCC __attribute__

允我心安 提交于 2020-01-02 21:46:34
GCC __attribute__ visibility("default") 和visibility("hidden")的区别 区别如下 区别如下 前提: gcc编译选项中设置 -fvisibility 当-fvisibility=hidden时 动态库中的函数默认是被隐藏的即 hidden. 除非显示声明为__attribute__((visibility(“default”))). 当-fvisibility=default时 动态库中的函数默认是可见的.除非显示声明为__attribute__((visibility(“hidden”))).。 来源: CSDN 作者: 活着的小程 链接: https://blog.csdn.net/daill894/article/details/103810157

C++一个新创建的类中有几个默认创建的隐式函数?

最后都变了- 提交于 2019-12-31 23:03:27
class ABC { } 即使无任何类定义,ABC类中也有4个隐式函数: 默认构造函数:ABC() 复制构造函数:ABC(ABC & abc) 重载的赋值运算符函数: ABC & opreator =(ABC & abc) 默认析构函数:~ABC() 这些函数全都可以被显示声明,显式声明将会替代隐式声明。 一个类中,如果某个成员变量定义为指针,并且在成员函数中为其分配了内存,那么就必须显式声明以上四个函数。否则将可能会出现不可知错误。 来源: CSDN 作者: qq_43058397 链接: https://blog.csdn.net/qq_43058397/article/details/103772976

JS函数作用域及作用域链理解

血红的双手。 提交于 2019-12-30 12:37:15
JS函数作用域及作用域链理解 从事web开发工作,难免会对客户端语言JavaScript一些概念有些似懂非懂的,甚至仅停留在实现功能的层面上,接下来的文章,是记录我对JavaScript的一些概念的理解。 变量作用域 在JavaScript中全局变量的作用域比较简单,它的作用域是全局的,在代码的任何地方都是有定义的。然而函数的参数和局部变量只在函数体内有定义。另外局部变量的优先级要高于同名的全局变量,也就是说当局部变量与全局变量重名时,局部变量会覆盖全局变量(如下面例子)。 var num = 1 ; //声明一个全局变量 function func ( ) {   var num = 2 ; //声明一个局部变量 ​ return num ; } console . log ( func ( ) ) ; //输出:2 注:声明局部变量时一定要使用var,否则,解释器会将该变量当做全局对象window的属性。 函数作用域 在JavaScript中使用的是函数作用域(变量在声明它们的函数体以及这个函数体嵌套的任意函数体都是有定义的)。(如下面的例子) function func ( ) { console . log ( num ) ; //输出:undefined,而非报错,因为变量num在整个函数体内都是有定义的 var num = 1 ; //声明num