摘要:
1、每个应用进程都会有自己独立的4GB内存空间 这句话很多人听起来可能会很矛盾很不解。 例如,我的电脑只有2GB的内存,打开个软件机会占用4GB内存,而我的电脑内存只有2GB,显然不够用,但是为什么程序还能在我的电脑上流畅运行呢?因为程序占用的这4GB内存是一个空头支票,知识口头上说给你4GB内存,
阅读全文
posted @ 2018-07-05 13:52
吹静静
阅读(672)
推荐(0)
摘要:
首先举一个例子: 在日常生活中,我们所说的眼镜大都是带框的眼镜,但是当提起隐形眼镜时,我们想一下它属不属于眼镜呢?答案肯定是属于的。这里的隐形眼镜和眼镜就是属于 is-a 的关系。 在面向对象编程过程中,我们会在创建多个类。例如: 中国: {} 山东省: {} 济南市: {} 我们在编程过程中,会让
阅读全文
posted @ 2018-07-03 15:44
吹静静
阅读(395)
推荐(0)
摘要:
对象数组是什么 数组对象就是大批量实例化对象的一种方法,以往我们都是这样:Student stu 实例化对象,如果有好几百个对象应该怎么办?这时候就用到了对象数组,顾名思义,就是吧所有要实例化的对象都放到一个组里面,然后直接实例化这个组,就像这样:Student stu[100] 这样一次性实例化1
阅读全文
posted @ 2018-07-02 13:57
吹静静
阅读(33601)
推荐(3)
摘要:
什么是析构函数 如果说构造函数是对象来到世间的第一声哭泣,那么析构函数就是对象死亡前的最后遗言。 析构函数在对象销毁时会被自动调用,完成的任务是归还系统的资源。 特性: 1、如果没有自定义的析构函数,则系统自动生成 2、析构函数在对象销毁时自动调用 3、析构函数没有返回值、没有参数也不能重载 定义格
阅读全文
posted @ 2018-07-02 00:27
吹静静
阅读(343)
推荐(0)
摘要:
拷贝构造函数 系统自动生成的函数: 普通构造函数 拷贝构造函数 如果自己定义了普通构造函数,系统不会再自动生成普通构造函数; 如果自己定义了拷贝构造函数,系统不会再自动生成拷贝构造函数。 ***如果没有自定义的拷贝构造函数则系统自动生成一个默认的拷贝构造函数。 ***当采用直接初始化或者复制初始化实
阅读全文
posted @ 2018-07-01 23:30
吹静静
阅读(205)
推荐(0)
摘要:
构造函数初始化列表以一个冒号开始,接着是以逗号分隔的数据成员列表,每个数据成员后面跟一个放在括号中的初始化式。例如: 上面的例子中两个构造函数的结果是一样的。上面的构造函数(使用初始化列表的构造函数)显式的初始化类的成员;而没使用初始化列表的构造函数是对类的成员赋值,并没有进行显式的初始化。 初始化
阅读全文
posted @ 2018-07-01 18:56
吹静静
阅读(333)
推荐(0)
摘要:
内存分区 栈区:int x = 0;int *p = NULL; 定义一个变量,定义一个指针时,会在栈区进行分配内存。分配的内存系统分配收回的,我们不用管。 堆区:int *p = new int[20]; 申请一块内存时,是在堆区进行的,用 new 申请,用 delete 删除,内存的调用需要程序
阅读全文
posted @ 2018-07-01 17:23
吹静静
阅读(511)
推荐(0)
摘要:
类内定义与内联函数 像下面这种函数名与函数体都写在类里面的函数形式被称作类内定义,编译器编译的时候会把它默认成内联函数。 类外定义 成员函数的函数体写在类的外面,这样叫做类外定义。 类外定义分类: 同文件类外定义:函数的定义与函数体写在同一个文件里。 分文件类外定义:函数的定义与函数体写在不同的文件
阅读全文
posted @ 2018-07-01 10:56
吹静静
阅读(1663)
推荐(0)
摘要:
关于内联函数 关键字:inline C++ 内联函数是通常与类一起使用。如果一个函数是内联的,那么在编译时,编译器会把该函数的代码副本放置在每个调用该函数的地方。 对内联函数进行任何修改,都需要重新编译函数的所有客户端,因为编译器需要重新更换一次所有的代码,否则将会继续使用旧的函数。 如果想把一个函
阅读全文
posted @ 2018-07-01 09:55
吹静静
阅读(433)
推荐(0)
摘要:
C++ 数据封装 所有的 C++ 程序都有以下两个基本要素: 程序语句(代码):这是程序中执行动作的部分,它们被称为函数。 程序数据:数据是程序的信息,会受到程序函数的影响。 封装是面向对象编程中的把数据和操作数据的函数绑定在一起的一个概念,这样能避免受到外界的干扰和误用,从而确保了安全。数据封装引
阅读全文
posted @ 2018-07-01 08:24
吹静静
阅读(422)
推荐(0)