在Swift中数据类型分为值类型和引用类型,只有类是引用类型,其他类型都是值类型.那么值类型和引用类型有什么区别呢?值类型是在赋值或给函数传递参数时创建一个副本,把副本传递过去,在函数的调用过程中不会影响原始数据.而引用类型是在赋值或给函数传递参数时把本身引用传递过去,在函数调用过程中会影响原始数据 ...
分类:
编程语言 时间:
2019-04-27 09:47:43
阅读次数:
176
params 是C#的关键字, 可变长参数,是在声明方法时参数类型或者个数不确定时使用 关于params 参数数组,需掌握以下几点: 一.参数数组必须是一维数组 二.不允许将params修饰符与ref和out修饰符组合起来使用 三.与参数数组对应的实参可以是同一类型的数组名,也可以是任意多个与该数组 ...
在一个子类被创建的时候,首先会在内存中创建一个父类对象,然后在父类对象外部放上子类独有的属性,两者合起来形成一个子类的对象。所以所谓的继承使子类拥有父类所有的属性和方法其实可以这样理解,子类对象确实拥有父类对象中所有的属性和方法,但是父类对象中的私有属性和方法,子类是无法访问到的,只是拥有,但不能使 ...
分类:
编程语言 时间:
2019-04-26 00:15:43
阅读次数:
137
在JS中,一般的=号传递的都是对象/数组的引用,并没有真正地拷贝一个对象,那如何进行对象的深度拷贝呢?如果你对此也有疑问,这篇文章或许能够帮助到你 一、对象引用、浅层拷贝与深层拷贝的区别 js的对象引用传递理解起来很简单,参考如下代码: 上述代码中,使用了=进行赋值,于是b指向了a所指向的栈的对象, ...
分类:
Web程序 时间:
2019-04-25 13:12:12
阅读次数:
172
表情包形象取自番剧《 猫咪日常 》 那我也整一个 曾几何时,笔者是个对算法这个概念漠不关心的人,由衷地感觉它就是一种和奥数一样华而不实的存在,即便不使用任何算法的思想我一样能写出能跑的程序 直到一年前帮同学做了个手机游戏demo才发现了一个严峻的问题 为啥\ 一样的画面能跑出ppt的质感? 虽然发现 ...
分类:
编程语言 时间:
2019-04-22 20:44:31
阅读次数:
152
引用: 引用就是另一个变量的别名,通过引用所做的读写操作实际上是作用于原变量上。 由于引用是绑定在一个对象上的,所以定义引用的时候必须初始化。 函数参数:引用传递 1.引用可做函数参数,但调用时只需 传普通变量即可 2.在被调函数中改变引用变量的值,则改变的是实参的值 动态内存管理 C++中通过运算 ...
分类:
编程语言 时间:
2019-04-07 13:00:25
阅读次数:
195
slice 是 Go 语言一个很重要的数据结构。网上已经有很多文章写过了,似乎没必要再写。但是每个人看问题的视角不同,写出来的东西自然也不一样。我这篇会从更底层的汇编语言去解读它,这是一个新的世界。 ...
分类:
编程语言 时间:
2019-04-01 22:39:54
阅读次数:
238
先说一下深拷贝和浅拷贝通俗理解 深拷贝:赋值时值完全复制,完全的copy,对其中一个作出改变,不会影响另一个 浅拷贝:赋值时,引用赋值,相当于取了一个别名。对其中一个修改,会影响另一个 PHP中, = 赋值时,普通对象是深拷贝,但对对象来说,是浅拷贝。也就是说,对象的赋值是引用赋值。(对象作为参数传 ...
分类:
Web程序 时间:
2019-03-30 10:19:10
阅读次数:
164
0.来源http://www.cnblogs.com/jin-xin/articles/8241942.html 1.return 返回0个返回值,返回一个返回值、返回多个返回值 None、如果一个变量接多个返回值,会变成元组 2.函数参数 位置传参、关键字传参、混合传参、默认参数、动态参数-->( ...
分类:
编程语言 时间:
2019-03-28 20:39:35
阅读次数:
212
1.尽量减少值传递,多用指针和引用来传递参数 值传递要拷贝对象,引用传递不用 2.++i和i++的效率问题 i++开辟了临时变量,效率低 3.将小粒度函数声明为内联函数 内联函数直接会直接展开,不需要函数调用的开销 4.减少函数调用 函数调用需要两次跳转,外加栈帧的内存操作 5.优先使用迭代而不是递 ...
分类:
编程语言 时间:
2019-03-20 22:13:12
阅读次数:
167