Chromium的智能指针/引用计数/Callback/Bind
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 这四个东西对使用者来说不难,看懂代码注释里的例子即可,预计1小时左右看懂全部。要去理解其设计思想的话最需要掌握的是模板类的使用,但一般使用者完全不用关心怎么设计的。 使用者的学习路径: 1.智能删除指针scoped_ptr 用作对普通指针的转储,防止忘记delete或不知道哪里delete。它跟引用计数没有关系。 头文件的注释就是使用示例 http://src.chromium.org/viewvc/chrome/trunk/src/base/memory/scoped_ptr.h template <class T, class D = base::DefaultDeleter<T> > class scoped_ptr 其中Deleter可以被替换,默认的Deleter区分是要delete普通指针还是指针数组,或者用free函数删除malloc的内存。 2. ScopedVector http://src.chromium.org/viewvc/chrome/trunk/src/base/memory/scoped_vector.h 在析构时会delete其元素的vector,知道它的行为即可。 3.带引用计数的类 http://src.chromium.org/viewvc/chrome/trunk