摘要:
1.定义 在GOF的《设计模式:可复用面向对象软件的基础》一书中对观察者模式是这样说的:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 2.代码简单实现 阅读全文
摘要:
首先引用的本质是一个指针常量,即int &p=a 等价于 int * const p=&a。指针常量的意思是指针变量中保存的地址不能修改,也就是说不能改变指针的指向,既然引用的本质是一个指针常量,当然也不能改变引用的指向了。 下面代码11行进行c=b操作后,c的值变成了4,乍一看还以为是c改变了指向 阅读全文
摘要:
1.管理方式不同 2.生长方向不同 3.大小不同 4.能否产生碎片不同 5.分配方式不同 6.分配效率不同 1)管理方式:堆,是由程序员进行管理的,需要程序员手动申请和回收空间,如果不回收的话,会造成内存泄漏的问题;栈,是由编译器进行管理的,由编译器自动分配和回收空间,一般保存的是局部变量和函数参数 阅读全文