CATEGORY

行为型:迭代器模式

行为型:迭代器模式

bingliaolong 5年前 9 0

概述 对于集合对象而言,肯定会涉及到对集合的添加和删除操作,同时也肯定支持遍历集合元素的操作,我们此时可以把遍历操作放在集合对象中,但这样的话,集合对象既承担太多的责任了。 面向对象设计原则中有一条就是单一职责原则,所有我们要尽可能地分离这些职责,用不同的类取承担不同的责任,迭代...

STL_vector

STL_vector

bingliaolong 5年前 8 0

区别 array是静态空间,一旦配置了就不能改变。 vector是动态空间,随着元素的加入,它的内部机制会自行扩充空间以容纳新元素。 摘要 迭代器 vector维护的是一个连续线性空间,所以不论其元素型别为何,普通指针都可以作为vector的迭代器而满足所有必要条件 因为vect...

C++并发编程 _ 基于锁的数据结构

C++并发编程 _ 基于锁的数据结构

bingliaolong 3年前 12 0

意义 设计并发数据结构,意味着多个线程可以并发的访问这个数据结构,线程可对这个数据结构做相同或不同的操作,并且每一个线程都能在自己的自治域中看到该数据结构。且在多线程环境下,无数据丢失和损毁,所有的数据需要维持原样,且无条件竞争。这样的数据结构,称之为“线程安全”的数据结构。 本...

51CTO:Linux C++网络编程一

51CTO:Linux C++网络编程一

bingliaolong 2年前 10 0

linux操作系统启动过程 第一个进程 在传统的Unix和Linux系统中,init进程是系统启动后的第一个进程(PID为1) 它是系统的祖先进程,负责启动其他所有的进程 在许多现代Linux发行版中,systemd已经取代了传统的init系统 在这些系统中,systemd是第一...

Pybind11记述:一

Pybind11记述:一

bingliaolong 1年前 2 0

概述 Pybind11是一个用于将C++代码与Python绑定的轻量级头文件库,使得可以轻松地在Python中调用C++函数和类 还可以让C++代码调用Python的功能和库 理解 可以把Pybind11理解为一个中间层,提供了在C++中调用Python代码或在Python中调用...

【Javascript】模块,导入,导出,动态导入

【Javascript】模块,导入,导出,动态导入

bingliaolong 11个月前 1 0

模块 (Module) 概述 随着我们的应用越来越大,我们想要将其拆分成多个文件,即所谓的“模块(module) 一个模块可以包含用于特定目的的类或函数库 模块可以相互加载,并可以使用特殊的指令 export 和 import 来交换功能,从另一个模块调用一个模块的函数: exp...

匹配_朴素字符串匹配算法

匹配_朴素字符串匹配算法

bingliaolong 5年前 3 0

字符串匹配 字符串匹配的形式化定义如下:假设文本是一个长度为n的数组 T[1...n],而模式是一个长度为m的数组P[1...m],其中m<=n。进一步假设P和T的元素都是来自一个有限字母集合M的字符。如M={0,1}或者M={a,b,c,...z}。 字符数组P和T通常称...

创建型:工厂方法模式

创建型:工厂方法模式

bingliaolong 5年前 13 0

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

扫一扫二维码分享