字典是一种可变容器模型,且可存储任意类型对象特点:字典是无序的,它不能通过偏移来存取,只能通过键来存取。内部没有顺序,通过键来读取内容,可嵌套,合并,方便我们组织多种数据结构,并且可以原地修改里面的内容,属于可变类型。组成字典的键必须是不可变的数据类型,比如,数字,字符串,元组等,列表等可变对象不能...
分类:
编程语言 时间:
2015-04-04 18:12:57
阅读次数:
124
Delphi的参数可以分为:默认参数(传值)、var(传址)、out(输出)、const(常数)四类 可以对比C/C++的相关知识,类比学习。 1.默认参数是传值,不会被改变,例子function MyFun(x : Integer) : Integer;begin Inc(x); ...
浅复制:只复制指向对象的指针,而不复制引用对象本身。计数器+1 ,就像比如retain深层复制:复制引用对象本身。计数器不变,产生新对象retain:始终是浅复制。引用计数每次加一。返回对象是否可变与被复制的对象保持一致。copy:对于可变对象为深复制,引用计数不改变;对于不可变对象是浅复制,引用计...
分类:
其他好文 时间:
2015-04-02 14:52:52
阅读次数:
114
浅复制:只复制指向对象的指针,而不复制引用对象本身。计数器+1 ,就像比如retain深层复制:复制引用对象本身。计数器不变,产生新对象retain:始终是浅复制。引用计数每次加一。返回对象是否可变与被复制的对象保持一致。copy:对于可变对象为深复制,引用计数不改变;对于不可变对象是浅复制,引用计...
分类:
其他好文 时间:
2015-04-01 21:35:47
阅读次数:
162
#includeusing namespace std;void f(const int x) //const修饰函数参数,传递过来的参数在函数内不可以改变,与上面修饰变量时的性质一样{ x=3;//编译有错误,不能修改函数参数的值} void f( int x) const //const...
分类:
其他好文 时间:
2015-03-31 22:11:00
阅读次数:
135
阅读目录:不可变对象自定义不可变集合Net提供的不可变集合不可变优点不可变对象缺点不可变对象不可变(immutable): 即对象一旦被创建初始化后,它们的值就不能被改变,之后的每次改变都会产生一个新对象。var str="mushroomsir";str.Substring(0, 6)c#中的st...
指针是一种专门来保存地址的数据类型C++函数参数传递:参数只能以值传递的方式传给函数。指针是传址,,联合只能容纳多种不同的类型的值,但是它每次只能存储一种类型。创建方式和结构一样,C++允许在类里面声明常量,但不允许对常量赋值。可以声明静态常量并赋值。编译器会为你默认定义构造函数、副本构造函数(复制...
分类:
编程语言 时间:
2015-03-21 12:38:14
阅读次数:
134
在ObjC中,什么是深浅拷贝?深浅拷贝分别指深拷贝和浅拷贝,即mutableCopy和copy方法。copy复制一个不可变对象,而mutableCopy复制一个mutable可变对象。什么时候用到深浅拷贝?下面举几个例子说明。非容器类对象如NSString,NSNumber等一类对象示例1:1234...
分类:
其他好文 时间:
2015-03-18 10:18:25
阅读次数:
149
1.变量变量第一次赋值时被创建,变量在使用前必须赋值变量本身没有类型,变量类型为它引用的对象类型;变量在使用时被替换成它引用的对象2.对象对象本身具有计数和类型,变量引用对象,当对象的引用变为0的时候,回收对象内存。但是类似INT等小类型对象,不一定立马回收它的内存。修改指向同一个可变对象的任何一个...
分类:
编程语言 时间:
2015-03-11 21:09:54
阅读次数:
162