12 2017 档案

摘要:malloc,free是一种库函数,不能被重载,new和delete是运算符,可以被重载 new和delete内部都调用malloc和free函数 new的三种用法: 1.new,不可以被重载 直接new一个对象 T* ptr = new T(); new一个对象时做了两件事情 * 调用了opera 阅读全文
posted @ 2017-12-18 11:19 CoderZSL 阅读(260) 评论(0) 推荐(0)
摘要://边写边改#ifndef __ZSL_LIST_H__ #define __ZSL_LIST_H__ #include //for size_t,ptrdiff_t,initializer_list template struct node_base { node_base *pre; node_base *next; T data; }; template c... 阅读全文
posted @ 2017-12-15 16:09 CoderZSL 阅读(200) 评论(0) 推荐(0)
摘要:1.shared_ptr:允许多个指针指向同一个对象 初始化方式: shared_ptr p1 = make_shared(10);//最好使用这种方式 shared_ptr p2(new int(20)); //只能用直接初始化方式 和普通指针有一样的操作,*,->,swap等 支持拷贝与赋值与自定义删除器,特别地: p.get()能返回p中保存的指针,... 阅读全文
posted @ 2017-12-02 22:11 CoderZSL 阅读(187) 评论(0) 推荐(0)
摘要:1.左值和右值 左值:非临时对象,可以在多条语句里面使用的对象。 右值:临时对象,只能在本条语句里面使用。 如:int i = 0;//i是持久对象,能在多条语句里面使用,0是临时对象,只能在本条语句里面使用 2.左值引用和右值引用 在C++11以前,右值不能被引用,最大限度就是用常量引用绑定一个右值:const int &a = 1 左值引用:& 右值引用:&& 如下: void proces... 阅读全文
posted @ 2017-12-02 20:02 CoderZSL 阅读(167) 评论(0) 推荐(0)