创建型:抽象工厂模式

创建型:抽象工厂模式

bingliaolong 5年前 10 0

引入 在工厂方法模式中具体工厂负责生产具体的产品,每一个具体工厂对应一种具体产品,工厂方法也具有唯一性,一般情况下,一个具体工厂中只有一个工厂方法或者一组重载的工厂方法。但是有时候我们需要一个工厂可以提供多个产品对象,而不是单一的产品对象。 抽象工厂模式与工厂方法模式最大的区别在...

创建型:工厂方法模式

创建型:工厂方法模式

bingliaolong 5年前 11 0

概念 简单工厂模式 简单工厂模式专门创建一个类来负责创建其他类得实例,被创建的实例通常都具有共同的父类。 它又称为静态工厂模式。 其实质是,由一个工厂类根据传入的参数,动态决定应该创建哪个具体类的实例。 工厂方法模式 工厂方法模式是粒度很小的设计模式,因为该模式的表现只是一个抽象...

C++_解码Toml文件

C++_解码Toml文件

bingliaolong 5年前 2 0

概述 本文介绍的关于toml就C++工程中的使用以及语法细节,皆基于下面这个版本的相关实现: https://github.com/ToruNiina/toml11.git 本文介绍的关于工程布局参考个人习惯以作示例。 添加模块 将下载下来的工程中的toml文件夹以及toml.h...

C++数据库_Sqlite3

C++数据库_Sqlite3

bingliaolong 5年前 3 0

简述 SQLite3只是一个轻型的嵌入式数据库引擎,占用资源非常低,处理速度比Mysql还快,专门用于移动设备上进行适量的数据存取,它只是一个文件,不需要服务器进程。 SQL语句是SQL操作的指令,我们用C/C++访问数据库时,需要用char*即C字符串来保存SQL语句,然后调用...

STL_heap

STL_heap

bingliaolong 5年前 4 0

简述 heap并不属于STL容器组件,它是priority queue的助手。 priority queue允许用户以任何次序将任何元素推入容器中,但取出时一定是从优先权最高的元素开始取。 binary heap是一种完全二叉树,即,整颗二叉树,除了最底层的叶子节点之外,是填满的...

STL_queue

STL_queue

bingliaolong 5年前 3 0

概述 一种先进先出的数据结构。 queue有两个出口,允许从最底端加入元素,取得最顶端元素。 除了这种最底端加入,最顶端可以取出元素的方式外,没有任何其他方法可以存取queue的其他元素。 最底端加入 push 最顶端推出 pop 实现 缺省实现 SGI STL以双端队列作为缺省...

C++并发编程 _ 同步并发(Future)

C++并发编程 _ 同步并发(Future) 2

bingliaolong 5年前 17 0

一次性事件 C++标准库模型将这种一次性事件称为期望future 当一个线程需要等待一个特定的一次性事件时,在某种程度上来说它需要知道这个事件在未来的表现形式。之后,这个线程会周期性的等待或检查,事件是否出发 在检查期间也会执行其他任务,直到对应的任务触发,而后等待期望的状态会变...

C++并发编程_同步并发(Condition_variable)

C++并发编程_同步并发(Condition_variable)

bingliaolong 5年前 12 0

等待事件或其他条件 如果一个线程正等待着第二个线程完成一项任务,它有几个选择。 可以一直检测共享数据(由互斥量保护)中的标识,并且让第二个线程在完成任务时设置该标识。 浪费资源 使用std::this_thread::sleep_for(),让等待的线程在检查之间休眠一会儿 得到...

STL_stack

STL_stack

bingliaolong 5年前 5 0

概述 stack是一种先进后出的数据结构,它只有一个出口。 stack允许新增元素,移除元素,取得最顶端元素。 SGI STL以deque作为缺省情况下的stack底层数据结构。 而stack是以底部容器完成其所有工作,具有这种“修改某物接口,形成另一种风貌”的性质的,称为配接器...

STL_deque

STL_deque

bingliaolong 5年前 3 0

概述 vector是单向开口的连续线性空间,而deque则是一种双向开口的连续线性空间。 所谓双向开口,是指可以在头尾两端分别做元素的插入和删除操作。 区别 和vector相比: deque运行常数时间内对起头端进行元素的插入和移除操作 deque没有所谓的容量的概念,因为他是动...

扫一扫二维码分享