函数声明

Effective C++ 学习笔记

别等时光非礼了梦想. 提交于 2020-03-08 13:46:07
1. 基础部分 Item 1: View C++ as a federation of languages. 对于内建类型,按值传递优于按引用传递,对于自定义类型则相反。 C++可视为4中子语言的联合:C,Object-Oriented C++,Template C++和STL。 Item 2: Prefer consts, enums, and inlines to #defines. 只有整型常量可以在类声明里面初始化: class Klass { const static int num = 1 ; //也可只声明,在定义文件中,即类外部定义、初始化; }; enum类型也可以在类内部初始化。 Item 3: Use const whenever possible. 对于指针p,const在 * 左边时,p指向的值为常量,const出现在 * 右边时,p指向的地址为常量。 const int * p1 ; int const * p2 ; int * const p3 ; ​ //以上代码,p1和p2一样,其指向的值为常量;p3指向的地址为常量 如果类Klass有同名的两个成员函数foo,其中一个为const类型,那么const实列优先调用const版的foo。 const函数不能改变非static的成员变量。 mutable修饰的成员,在const函数中也可以改变其值。

js中的函数

岁酱吖の 提交于 2020-03-08 08:05:31
函数 函数:由事件驱动的或者当它被调用时执行的可重复使用的代码块。语法格式: function 函数名(参数1,参数2) { //用关键字function来声明函数 这里要执行的代码 } 函数名(参数1,参数2) //调用函数 注意:javaScript 对大小写敏感。关键词 function 必须是小写的,并且必须以与函数名称相同的大小写来调用函数。 函数的声明 第一种function关键字: function foo(x, y) { return x + y } 这种声明方式可以通过函数名来调用 第二种:函数表达式 这种方式:没有函数名而是通过变量名来代替函数名,调用函数的时候通过访问变量来调用 var foo = function (x, y) { return x + y }; 第三种:function构造函数,没有人用 var foo = new function() 带有返回值的函数 var foo = function (x, y) { return x + y }; var f = foo(3, 4); alert(f) 注意:在使用 return 语句时,函数会停止执行并不是整个javascript 停止,并返回指定的值 ,函数的返回值你不需要声明他只需要使用 return 运算符后跟要返回的值即可。如果return没有返回值

预解析

醉酒当歌 提交于 2020-03-08 04:48:01
预解析 JS代码在执行之前,会对代码进行预解析,寻找作用域中的var 和function ,然后对其进行事先声明,在从上到下执行代码。这就是一个预解析的过程。 预解析机制 js代码只执行前,会把函数或者变量声明提升所在作用域的最顶端 注意点:只是声明提前(变量声明和函数声明),变量的赋值和函数的调用留在原地 依次执行 全局作用域 GO对象:全局对象 a 生成一个GO对象,封装的就是作用域 GO={} b 分析变量声明(var) 就是声明的变量名作为Go对象的属性名 值为undefinde c 分析函数声明 函数名作为Go对象的属性名,属性值为函数体,如果有遇到同名函数,直接覆盖 console . log ( a ) ; var a = 12 ; function a ( ) { var a ; var a = function ( ) { } } /* 1生成一个GO对象:GO={} 2分析变量声明 GO={a:undefined} 3分析函数声明 GO={a:function a() { var a; var a = function() { } }} */ AO对象(活动对象) AO的步骤 在函数执行前的一瞬间, 1生成一个AO对象 2. 分析参数 ,以形参作为该对象的属性名,实参作为属性值 3. 分析变量声明(var声明的变量) 变量名为属性名 ,值为undefined

JS面向对象之作用域

折月煮酒 提交于 2020-03-08 02:24:15
作用域 词法作用域 作用域 域 表示的就是 范围 ,即 作用范围 就是一个名字在什么地方能使用,在什么地方不能使用 块级作用域 块 级别的作用范围 // 在 c , java 等编程语言中,下面的语法报错 { var num = 123; // 应该用int , 这里是伪代码 { console.log(num); // 123 } console.log(num); // 报错 } 在 js 中采取词法作用域 词法(代码) 作用域,就是代码在编写过程中体现出来的作用范围,代码一旦写好,不用执行,他的作用范围就已经确定好了,这个就是所谓的 词法作用域 在 js 中的词法作用域规则 1. 函数允许方位函数外的数据 2. 整个代码结构中只有函数可以限定作用域 3. 作用规则首先是 提升规则 分析 4. 就近原则 如果当前作用规则有了名字,就不考虑外面的名字 在 js 中作用域分析方法 1. 先进行预解析,分析预解析过程 * 程序在执行过程, 会先将代码读取到内存中检查. 会将所有的声明在此时进行标记. 所谓的标记就是 让 js 解释器知道有这个名字, 后面在使用名字的时候, 不会出现未定义的错误. 这个标记过程就是提升. * 声明 1. 名字的声明, 标识符的声明( 变量名声明 ) * 名字的声明就是让我们的解释器知道有这个名字 * 名字没有任何数据与之对应 2. 函数的声明 *

swift学习二:基本的语法

若如初见. 提交于 2020-03-06 18:16:27
声明本文转载自:http://www.cocoachina.com/applenews/devnews/2014/0603/8653.html Swift是什么? Swift是苹果于WWDC 2014公布的编程语言,这里引用 The Swift Programming Language 的原话: Swift is a new programming language for iOS and OS X apps that builds on the best of C and Objective-C, without the constraints of C compatibility. Swift adopts safe programming patterns and adds modern features to make programming easier, more flexible and more fun. Swift’s clean slate, backed by the mature and much-loved Cocoa and Cocoa Touch frameworks, is an opportunity to imagine how software development works. Swift is the first industrial

swift学习二:基本的语法

拜拜、爱过 提交于 2020-03-06 18:15:47
声明本文转载自:http://www.cocoachina.com/applenews/devnews/2014/0603/8653.html Swift是什么? Swift是苹果于WWDC 2014公布的编程语言,这里引用 The Swift Programming Language 的原话: Swift is a new programming language for iOS and OS X apps that builds on the best of C and Objective-C, without the constraints of C compatibility. Swift adopts safe programming patterns and adds modern features to make programming easier, more flexible and more fun. Swift’s clean slate, backed by the mature and much-loved Cocoa and Cocoa Touch frameworks, is an opportunity to imagine how software development works. Swift is the first industrial

Swift 简单介绍 - 苹果最新的编程语言

倾然丶 夕夏残阳落幕 提交于 2020-03-06 18:14:40
Swift 真的能够说是最新的编程语言了,2014wwdc刚刚公布,以下来了解一下都有哪些特点。 首先感谢原作者,主要内容是借鉴他的,參考链接 http://zh.lucida.me/blog/an-introduction-to-swift/ 关于 这篇文章简要介绍了苹果于 WWDC 2014 公布的编程语言——Swift。 前言 在这里我觉得有必要提一下 Bret Victor 的 Inventing on Principle 。Swift编程环境的大部分概念都源自于 Bret 这个演讲。 接下来进入正题。 Swift是什么? Swift是苹果于WWDC 2014公布的编程语言,这里引用 The Swift Programming Language 的原话: Swift is a new programming language for iOS and OS X apps that builds on the best of C and Objective-C, without the constraints of C compatibility. Swift adopts safe programming patterns and adds modern features to make programming easier, more flexible and more

【译】PEP 318--函数和方法的装饰器

流过昼夜 提交于 2020-03-05 15:56:30
PEP原文 : https://www.python.org/dev/peps/pep-0318 PEP标题: Decorators for Functions and Methods PEP作者: Kevin D. Smith, Jim J. Jewett, Skip Montanaro, Anthony Baxter 创建日期: 2003-06-05 合入版本: 2.4 译者 : 豌豆花下猫 ( Python猫 公众号作者) PEP翻译计划 :https://github.com/chinesehuazhou/peps-cn 内容 警告警告警告 摘要 动机 为什么这很难? 背景 关于“Decorator”名称 设计目标 当前语法 语法的选择 装饰器位置 语法形式 为什么是@? 当前实现与历史 社区共识 例子 (不再是)未决问题 参考资料 版权 警告警告警告 本文档旨在描述装饰器语法和做出决定的过程。它既不试图涵盖大量潜在的替代语法,也不试图详尽列出每种形式的所有优点和缺点。 摘要 当前用于转换函数和方法的方式(例如,将它们声明为类或静态方法)很笨拙,并且可能导致难以理解的代码。在理想的情况下,这些转换应该在代码中作声明的位置进行。本 PEP 引入了对函数或方法声明作转换的新语法。 动机 当前对函数或方法作变换的方式会把实际的变换置于函数体之后。对于大型函数

JavaScript

。_饼干妹妹 提交于 2020-03-05 00:18:55
JavaScript概述 ECMAScript和JavaScript的关系     1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript提交给国际标准化组织ECMA,希望这门语言能够成为国际标准。次年,ECMA发布262号标准文件(ECMA-262)的第一版,规定了浏览器脚本语言的标准,并将这种语言称为ECMAScript,这个版本就是1.0版。     该标准一开始就是针对JavaScript语言制定的,但是没有称其为JavaScript,有两个方面的原因。一是商标,JavaScript本身已被Netscape注册为商标。二是想体现这门语言的制定者是ECMA,而不是Netscape,这样有利于保证这门语言的开发性和中立性。     因此ECMAScript和JavaScript的关系是,前者是后者的规格,后者是前者的一种实现。 ECMAScript的历史 年份 名称 描述 1997 ECMAScript 1 第一个版本 1998 ECMAScript 2 版本变更 1999 ECMAScript 3 添加正则表达式 添加try/catch ECMAScript 4 没有发布 2009 ECMAScript 5 添加"strict mode"严格模式 添加JSON支持 2011 ECMAScript 5.1 版本变更 2015

前端之javascript

心不动则不痛 提交于 2020-03-05 00:06:58
JavaScript 是属于网络的脚本语言! JavaScript 被数百万计的网页用来改进设计、验证表单、检测浏览器、创建cookies,以及更多的应用。 JavaScript 是因特网上最流行的脚本语言。 JavaScript 很容易使用!你一定会喜欢它的 JavaScript的历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中),后将其改名ScriptEase(客户端执行的语言)。 Netscape(网景)接收Nombas的理念,( Brendan Eich) 在其Netscape Navigator 2.0产品中开发出一套livescript的脚本语言。Sun和Netscape共同完成,后改名叫JavaScript。 微软随后模仿在其IE3.0的产品中搭载了一个JavaScript的克隆版叫Jscript。 为了统一三家,ECMA( 欧洲计算机制造协会)定义了ECMA-262规范.国际标准化组织及国际电工委员会(ISO/IEC)也采纳 ECMAScript 作为标准(ISO/IEC-16262)。从此,Web 浏览器就开始努力(虽然有着不同的程度的成功和失败)将 ECMAScript 作为 JavaScript 实现的基础。 ECMA-262 是 JavaScript 标准的官方名称。 ECMAScript