【Geekband】Week 2 Notes

0. 主要内容


1. Big Three在String Class的实现

  • 函数声明时的设计思路

1.1 普通构造函数


  • 对字符串的处理

1.2 拷贝构造函数 - Copy Constructor

  • 默认情况(即浅拷贝)
  • 非默认情况(主要针对,类成员有指针的情况)

1.3 拷贝赋值 - Copy Assignment


1.3 析构函数

  • 表达方式

  • 注意中括号的位置

1.4 总结


2. Stack和Heap

  • Stack是存在于某作用域的一块内存空间,函数本身即会形成一个stack来放置它接受的参数以及返回地址
  • Stack在作用域结束后会自己消失

  • Heap是操作系统提供的一块全局的内存空间,程序员可以动态分配获得诺干区块。

  • Heap中由new动态分配的所得的需要delete来删除它。

  • delete 深层次含义

3. 动态分配内存

  • 以VC为例

4. 补充

4.1 Static

  • 详见下图注释

  • 具体调用方式

4.2 cout可以接收各类数据类型


4.3 class Template

  • 容易带来代码膨胀
  • 自己还未做相关测试

4.4 function Template

4.5 Namespace

  • 使用方法见紫色注释

posted @ 2016-03-15 09:41  Frankww  阅读(211)  评论(0编辑  收藏  举报