自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 C++ 随机数引擎

梳理一下C++随机引擎的相关知识。核心知识点是:引擎会返回相同的随机数序列的理解。(可以理解为标准库random中的所有引擎对象无论何时都返回一个同样的、固定的、无限多元素的伪随机数序列)Q: 为什么我们应该把引擎声明为static的?A: 可以把每个引擎想象成在一个已生成好的随机序列上的迭代器,每次使用分布类型时就会推进这个迭代器。因此,这也就解释了为什么badRand和goodRand的区...

2019-04-27 15:46:10 1041

原创 C++primer 5th 实现自己版本的make_shared(以及C++14的make_unique)

课后习题 实现自定义版本的make_sharedmake_shared是如何工作的:make_shared应该是一个可变参数模板函数,它将接收的所有参数转发给shared_ptr的构造函数 然后返回一个shared_ptr指针的副本//返回std::shared_ptrtemplate <typename T, typename... Args>shared_ptr<T&...

2019-04-24 11:13:30 564

原创 C++primer 5th 类似shared_ptr和unique_ptr的简易模板的实现

C++ primer 5th 课后习题 --实现自己版本的shared_ptr和unique_ptr行为像指针的类都可以像这样进行类比定义,可以自动管理动态内存,无需自己delete不用再担心悬挂指针、内存泄漏或对同一内存区域两次delete之类的错误但是注意:无论是shared_ptr还是我们自己实现的类模板my_shared_ptr都存在循环引用时(比如用于双向链表时),依然导致内存泄漏...

2019-04-19 23:42:10 332

原创 C++ primer 5th 实现一个类似vector的简易Vec<T>模板

C++ primer 5th 课后习题将以前的StrVec类重写为模板可以实现vector的一些操作//16.16 将StrVec类重写成模板 命名为Vec//前置声明//.htemplate <typename T> class Vec;template <typename T> bool operator==(const Vec<T>&...

2019-04-18 23:44:51 435

原创 C++ primer 5th 实现Blob及其伴随类的模板

C++ primer 5th 课后练习熟悉模板的编写将之前的StrBlob极其伴随类改写成模板 支持多种类型其中Blob的数据成员是shared_ptr<vector> 多个对象共享一个vetorBlobPtr和ConstBlobPtr分别是Blob的非常量、常量的自定义迭代器//16.12 16.13 编写自己版本的Blob和BlobPtr模板 并为BlobPtr的相等和关...

2019-04-18 10:28:57 615 1

原创 C++Primer 文本查询程序再探

C++Primer 文本查询程序再探C++ Primer 5th 示例程序拓展之前的简单文本查询程序,使得其可以进行一些逻辑查询,形如:Query q= Query(“fiery”) & Query(“bird”) | ~Query (“wind”)主要熟悉面向对象的解决方案#include "pch.h"#include <iostream>#include ...

2019-04-14 23:25:00 744 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除