内部传值的方式不同:值类型是把自己的值复制一份传递给别的函数操作.无论复制的值怎么被改变.其自身的值是不会改变的而引用类型是把自己的内存地址传递给别的函数操作.操作的就是引用类型值的本身.所以值被函数改变了.例如int a = 1;int b = a;b++;这时b为2,a仍然是1再看引用类型,例如...
分类:
其他好文 时间:
2014-10-22 12:21:41
阅读次数:
203
1.指针:内存地址指针变量:专门用一个变量来存放指针,这种变量成为指针变量。因此,一个指针变量的值就是某个内存单元的地址(或指针)“指针”是指地址,是常量,“指针变量”是指取值为地址的变量2.二级指针指针变量中主要存放目标变量的地址,这种指针称为一级指针。如果指针变量中存放的不是变量的地址,而是存放...
分类:
其他好文 时间:
2014-10-21 00:38:15
阅读次数:
229
1. 字节对齐:现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定类型变量(内置类型)的时候经常在特 定的内存地址访问,这就需要各种类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。2. 字节对齐的....
分类:
其他好文 时间:
2014-10-19 16:58:48
阅读次数:
203
1. 字节对齐:现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定类型变量(内置类型)的时候经常在特 定的内存地址访问,这就需要各种类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。2. 字节对齐的....
分类:
其他好文 时间:
2014-10-19 16:52:09
阅读次数:
229
VirtualAlloc 分配的内存是以 4K 为最小单位、连续的内存地址(但映射到真实的内存时它不一定是连续的), 前面说了, 它不适合分配小内存(譬如只有几个字节的变量); 局部的变量在 "栈" 中有程序自动管理, 那么那些全局的小变量怎么办呢? 这就要用到 "堆".这样看来, Virtua.....
重写hashCode的成员变量发生变化,Set中对象无法找到 1、使用对象的hashCode函数来初步确定内存位置,如果该位置没有存储对象,则将此对象存放于此 2、如果hash函数直接计算出的内存地址空间已经有对象存在,则会...
分类:
编程语言 时间:
2014-10-18 12:46:49
阅读次数:
164
数据库命名约定sqlite3_open()API用到数据库的文件名,可以是相对当前工作目录的相对路径名,也可以是从系统根文件树开始的完整路径名。任何被本地文件系统接受的正规文件名都是好的。如果文件名是C语言中的NULL指针(即,0),SQlite创建并打开一个临时文件。如果文件名是内存地址,SQLi...
分类:
数据库 时间:
2014-10-18 12:37:40
阅读次数:
745
派生类继承基类内存分配时,是在于基类对象不同的内存地址处,按基类的成员变量类型,开辟一个同样的类型空间,但注意开辟后派生对象的空间,不是复制基类的成员的值,而是仅仅开辟那种成员类型的空间,未初始化时,里面存在的数是不确定的然后派生类自己定义的成员变量是排在继承的A类成员下面,如果派生类定义的变量名与...
分类:
其他好文 时间:
2014-10-18 00:32:07
阅读次数:
288
一般内存拷贝与优化代码实现#includeusingnamespacestd;//不安全的内存拷贝(当源内存地址与目标内存地址重叠时会产生错误)void h_memcpy(void*src,void *dst,intsize){ if (src == NULL|| dst == NULL) { .....
分类:
其他好文 时间:
2014-10-16 23:56:03
阅读次数:
248
C++98中规定了左值和右值的概念,但是一般程序员不需要理解的过于深入,因为对于C++98,左值和右值的划分一般用处不大,但是到了C++11,它的重要性开始显现出来。 C++98标准明确规定: 左值是可以取得内存地址的变量。 非左值即为右值。 从这里可以看出,可以执行&取地址的就是左值,其他的就是右...
分类:
编程语言 时间:
2014-10-16 23:37:53
阅读次数:
579