E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
侯捷
侯捷
C++ STL标准库和泛型编程 —— 3 容器(关联式容器)
3.3关联式容器3.3.0RB-Tree红黑树(Red-BlackTree)是一种自平衡的二叉搜索树BST(AVL是另一种)rb-tree提供遍历操作和iterators,按中序遍历遍历,便可以得到排序状态不能用iterator去改变元素的key(其有严谨的排列规则)rb-tree提供两种insertion操作:insert_unique()和insert_equal(),前者表示key独一无二,
PLUS_WAVE
·
2023-10-03 10:06
C++
c++
STL
标准库
容器
侯捷
学习笔记
哈希表
侯捷
C++ STL标准库和泛型编程 —— 3 容器(序列式容器)
3容器3.1容器结构分类分类:序列式容器SequenceContainer,关联式容器AssociativeContainer序列式容器:按照放入的次序进行排列Array数组,固定大小Vector向量,会自动扩充大小Deque双向队列,双向都可以扩充List链表,双向链表Forward-List链表,单向链表关联式容器:有key和value,适合快速的查找STL中实现使用红黑树(高度平衡二叉树)和
PLUS_WAVE
·
2023-10-03 10:05
C++
c++
笔记
学习
侯捷
学习笔记
侯捷
C++ STL标准库和泛型编程 —— 6 算法 + 7 仿函数
6算法算法的标准样式:需要传进去两个指针6.1算法源码6.1.1accumulate两个版本:元素累加到init上templateTaccumulate(InputIteratorfirst,InputIteratorlast,Tinit){for(;first!=last;++first)init=init+*first;//累加到initreturninit;}元素累运算到init上templ
PLUS_WAVE
·
2023-10-03 10:35
C++
c++
侯捷
学习笔记
算法
仿函数
STL
标准库
(第十一步) STL: stl_rb_tree容器实现
(log(N))O(log(N))的数据结构,具体原理可以看这个:红黑树插入和删除分析之后程序的编写,和注释红黑树重平衡的情况也是对照上文的情况的,这里就不多做介绍,直接开始程序设计设计的重点首先根据
侯捷
书
浊酒x
·
2023-10-03 09:55
STL剖析
数据结构
visual
studio
c++
stl
STL-06-deque源码剖析
参考
侯捷
《STL源码剖析》deque概述vector是单向开口的连续线性空间,deque则是一种双向开口的连续线性空间。所谓双向开口,意思是可以在头尾两端分别做元素的安插和删除动作。
发如雪-ty
·
2023-09-29 07:19
STL
c++----右值引用
最近看了
侯捷
老师的书籍,看到了右值引用,梳理一下右值引用的用法,以及特点:右值、左值既然是右值引用,我们首先要理解的是什么是右值什么是左值:1、位于赋值号(=)左侧的表达式就是左值;反之,只能位于赋值号右侧的表达式就是右值
编程的机械狗
·
2023-09-29 00:05
c++知识
c++
右值引用
侯捷
C++ STL标准库和泛型编程 —— 1 STL概述 + 2 OOPvsGP
现在开始更新
侯捷
的STL的部分了!!!
PLUS_WAVE
·
2023-09-26 10:53
C++
c++
笔记
侯捷
学习
学习笔记
【C++面向对象
侯捷
】8.栈,堆和内存管理
文章目录栈,堆stackobject的生命周期staticlocalobject的生命周期globalobject的生命周期heapobjects的生命期new:先分配memory,再调用构造函数delete:先调用析构函数,再释放memory动态分配所得的内存块,inVCarraynew一定要搭配arraydelete栈,堆stackobject的生命周期staticlocalobject的生命
联系丝信
·
2023-09-25 15:22
【C++面向对象侯捷】
c++
java
开发语言
STL容器介绍——vector的源码剖析和模拟实现
写在开头,此文章参考:
侯捷
——《STL源码剖析》1.vector概述:相较于我们熟悉的数组(array)来说,vector的操作方式和它几乎毫无差别。
GuoCheng-12
·
2023-09-24 16:10
c++
算法
stl
数据结构
【
侯捷
C++面向对象高级编程】(下)
【
侯捷
C++面向对象高级编程】(上)转换函数转标准库的转换函数写法看下就可以像指针一样的类智能指针必须要写的俩个操作符重载迭代器类多了++–+=这些操作符重载像函数一样的Class(仿函数functor
Cpt1024
·
2023-09-24 16:42
#
C/C++
c++
开发语言
编辑器
linux
c语言
c#
git
【C++面向对象
侯捷
】12.虚函数与多态 | 13.委托相关设计【设计模式 经典做法,类与类之间关联起来,太妙了,不断的想,不断的写代码】
文章目录12.虚函数与多态举例:委托+继承【观察者模式】13.委托相关设计Composite组合模式Prototype原型模式12.虚函数与多态纯虚函数一定要子类重新定义的继承和复合关系下的构造和析构举例:委托+继承【观察者模式】13.委托相关设计问题:设计windows文件系统?该准备哪些class?哪些设计模式?Composite组合模式Prototype原型模式设计模式这本书,网络上也有!解
联系丝信
·
2023-09-23 04:20
【C++面向对象侯捷】
c++
设计模式
开发语言
【C++面向对象
侯捷
】11.组合和继承
文章目录Composition复合,表示has-aDelegation(委托),CompositionbyreferenceInheritance继承,表示is-aComposition复合,表示has-aDelegation(委托),CompositionbyreferenceInheritance继承,表示is-a
联系丝信
·
2023-09-23 04:19
【C++面向对象侯捷】
c++
侯捷
老师C++课程:C++2.0 新特性
C++2.0新特性第一讲:语言variatictemplates参数包在类模板中,模板参数包必须是最后一个模板形参.而在函数模板中则不必!!!这个之前提过了,就不细谈了下面那三个分别对应:typename...Types//模板参数包constTypes&...args//函数参数类型包print(args...)//函数参数包利用参数包也可以实现万用的hashcode的实现:之前写过就不细看了零
lzx0626.
·
2023-09-21 21:37
侯捷老师C++课程
c++
linux
侯捷
老师C++课程:内存管理
内存管理第一讲:primitivesc++应用程序c++内存的基本工具测试程序:#includeusingnamespacestd;#include#includeintmain(){//三种使用方法void*p1=malloc(512);//512bytescout*p2=newcomplex;cout().allocate(3,(int*)0);allocator().deallocate(p
lzx0626.
·
2023-09-21 20:03
侯捷老师C++课程
c++
从零开始实现C++ TinyWebServer(二)---- 勿在浮沙筑高台,项目地基需打稳
这句话前半句原处是出自
侯捷
老师的《深入浅出MFC》,引申义为做什么事都要脚踏实地,打好基础,同时做事要选择自己所擅长的和所感兴趣的方面,
JehanRio
·
2023-09-21 20:22
从零开始实现C++
TinyWebServer
c++
后端
linux
侯捷
八部曲 C++面向对象高级开发(上)+(下)【C++学习笔记】 超详细 万字笔记总结 笔记合集
文章目录ⅠC++part1面向对象编程1头文件与类的声明1.1cvscpp关于数据和函数1.2头文件与类1.2.1头文件1.2.2class的声明1.2.3模板初识2构造函数2.1inline函数2.2访问级别2.3ctor构造函数2.3.1ctor的写法2.3.2ctor/函数重载2.3.3ctor放在private区2.4const常量成员函数3参数传递与返回值——引用3.1参数传递3.2返回
PLUS_WAVE
·
2023-09-11 19:07
C++
c++
学习
笔记
侯捷
C++ part2 兼谈对象模型笔记——7 reference、const、new/delete
7reference、const、new/delete7.1referencex是整数,占4字节;p是指针占4字节(32位);r代表x,那么r也是整数,占4字节intx=0;int*p=&x;//地址和指针是互通的int&r=x;//引用是代表x引用与指针不同,只能代表一个变量,不能改变引用底部的实现也是指针,但是注意object和它的reference的大小是相同的,地址也是相同的(是编译器制造
PLUS_WAVE
·
2023-09-11 19:36
C++
c++
笔记
【
侯捷
C++面向对象 】(上)
1.C++编程简介&目标培养代码正规编范class分为带pointer和不带pointer的学习C++:语言+标准库2.CvsC++C语言:(type)数据+函数—create—》数据sC++:(class)数据+成员—create—》对象不带指针的类:complex复数带指针的类:string字符串如果是自己写的头文件那就必须加上防卫式的声明头文件布局:然后就是body/函数设计函数可以直接在b
Cpt1024
·
2023-09-10 15:31
#
C/C++
c++
开发语言
侯捷
课程笔记(一)(传统c++语法,类内容)
侯捷
课程笔记(一)(传统c++语法,类内容)2023-09-03更新:本小节已经完结,只会进行小修改埋下了一些坑,后面会单独讲或者起新章节讲最近在学习
侯捷
的一些课程,虽然其中大部分内容之前也都已经了解过了
gxt_kt
·
2023-09-03 22:33
笔记
c++
侯捷
STL-容器deque、容器适配器stack、queue
容器deque、容器适配器stack、queue一、使用deque#include#include#include#include#include#include#include#include#include#include"public_func.h"usingnamespacestd;namespaceNamespace_deque{voidtest_deque(){coutdeque;ch
ty_hailin
·
2023-09-01 16:13
STL
c++
stl
数据结构
【学习笔记】C++STL和泛型编程-
侯捷
文章目录C++标准库:体系结构与内核分析第一讲1.header、版本和重要资源2.STL体系结构介绍2.1STL六大部件(Components)2.2STL容器的前闭后开区间2.3基于范围的for循环ranged-basefor2.4auto关键字3.容器的结构与分类4.各种STL容器的测试4.1vector容器的测试4.2list和forward_list容器的测试4.3deque容器的测试4.
NewsomTech
·
2023-08-17 06:05
C++侯捷大师
c++
stl
标准模板库
泛型编程
侯捷
C++ part2 兼谈对象模型笔记——6 多态 虚机制
6多态虚机制6.1虚机制当类中有虚函数时(无论多少个),其就会多一个指针——vptr虚指针,其会指向一个vtbl虚函数表,而vtbl中有指针一一对应指向所有的虚函数有三个类依次继承,其中A有两个虚函数vfunc1()vfunc2(),B改写了A的vfunc1(),C又改写了B的vfunc1(),子类在继承中对于虚函数会通过指针的方式进行——因为可能其会被改写继承中,子类要继承父类所有的数据和其函数
PLUS_WAVE
·
2023-08-15 06:59
C++
c++
笔记
侯捷
C++ part2 兼谈对象模型笔记——1 转换
1转换1.1转换函数将当前对象的类型转换成其他类型以operator开头,函数名称为需要转成的类型,无参数前面不需要写返回类型,编译器会自动根据函数名称进行补充转换函数中,分子分母都没改变,所以通常加const//classFraction里的一个成员函数operatordouble()const{return(double)(m_numerator/m_denominator);}Fractio
PLUS_WAVE
·
2023-08-08 09:44
C++
c++
笔记
侯捷
C++面向对象编程笔记——10 继承与虚函数
10继承与虚函数10.1Inheritance继承语法::publicbase_class_namepublic只是一种继承的方式,还有protect,private子类会拥有自己的以及父类的数据10.1.1继承下的构造和析构与复合下的构造和析构相似构造是由内而外Container的构造函数,编译器会自动先调用Component的default构造函数,再执行自己注意如果要调用Component的
PLUS_WAVE
·
2023-08-07 19:21
C++
c++
笔记
侯捷
C++面向对象编程笔记——8 静态 模板 namespace
8.1static对于非静态的函数和数据:非静态的成员函数通过this指针来处理不同的数据(一份函数—>多个对象)对于静态的函数和数据:静态函数没有this,不能处理一般的数据,只能处理静态的数据例1:classAccount{public:staticdoublem_rate;//静态变量的声明staticvoidset_rate(constdouble&x){m_rate=x;}//静态函数}
PLUS_WAVE
·
2023-08-07 19:51
C++
c++
笔记
侯捷
C++面向对象编程笔记——7 堆,栈,内存管理
7堆,栈,内存管理7.1堆和栈Stack栈,是存在于某作用域(scope)的一块内存空间。例如当你调用函数,函数本身即会形成一个stack用来放置它所接收的参数,以及返回地址;在函数本体(functionbody)内声明的任何变量其所使用的内存块都取自上述stackHeap堆,或称为systemheap,是指由操作系统提供的一块global内存空间,程序可动态分配(dynamicallocated
PLUS_WAVE
·
2023-08-07 19:21
C++
c++
笔记
侯捷
C++面向对象编程笔记——9 复合 委托
9复合委托9.1Composition复合类似于c中结构里有结构——class里有classdeque是一个已经存在的功能很多的类(两头进出的队列);利用deque的功能来实现queue的多种操作该例只是复合的一种情况——设计模式Adapter9.1.1复合下的构造和析构构造是由内而外Container的构造函数,编译器会自动先调用Component的default构造函数,再执行自己注意如果要调
PLUS_WAVE
·
2023-08-07 19:20
C++
c++
笔记
【C++】透过STL源码深度剖析及模拟实现vector
鉴于读者的响应,打算将文章拆分一下,方便观看,基本接口可看深入浅出STL之vector类一、源码引入以下我所介绍的都是基于【SGI】版本的STL,对源码有兴趣的同学可以去看看
侯捷
老师的《STL源码剖析》
烽起黎明
·
2023-08-07 00:49
C++
STL
c++
STL
vector
模拟
侯捷
——1.C++面向对象高级开发 总结
侯捷
——1.C++面向对象高级开发总结前面的几个视频没有总结,等以后有空再补7.Classwithpointermember(s)——string类该string类,内含指针,所以要自己写构造函数和析构函数
壹~
·
2023-07-27 07:12
C++
c++
开发语言
Effective C++ # 条款7 为多态基类声明virtual析构函数
ScottMeyers出版社:电子工业出版社副标题:改善程序与设计的55个具体做法原作名:EffectiveC++:55SpecificWaystoImproveYourProgramsandDesigns译者:
侯捷
出版年
FlyingPenguin
·
2023-07-19 11:26
内存管理【
侯捷
】——— const和new
内存管理【
侯捷
】———const和new相关资料:书籍:《SmallMemorySoftware》《ModernC++Design》C++Applications|||C++Library||C++primitives
eric_dma
·
2023-07-18 04:57
C++学习
c++
c++23中的新功能之十平坦容器
这里先回顾一下,在STL中有六大组件(
侯捷
老师的《STL源码剖析》),这其中开发者经常见到的还是以容器为主。容器主要分成两大类:顺序容器和关联容器。
fpcc
·
2023-07-16 19:30
C++11
C++
c++23
哈希算法
算法
图书推荐4:《重构:改善既有代码的设计》
文章目录基本介绍推荐理由总结延续基本介绍书名重构:改善既有代码的设计作者(美)MartinFowler译者
侯捷
熊节出版社中国电力出版社出版时间2003年8月页数431页定价68元装帧平装ISBN7508315545
码递夫
·
2023-06-23 23:36
图书
重构
单元测试
devops
java
c++ vector 先进先出_C++ STL Vector(容器)学习
本文参考博客链接及书籍:
侯捷
老师的《STL源码剖析》在C++标准库中,STL容器是一些常用数据结构的实现,比如数组、链表、树、栈、队列、散列表、集合、映射表等,可以分为序列式(sequence)和关联式
weixin_39897887
·
2023-06-16 04:01
c++
vector
先进先出
C++学习之引用与指针(
侯捷
老师)
1、引用就是原来的变量,老师讲引用代表原来的变量,而指针指向原来的变量,从下面的图可以看出,指针的大小是4个字节(32位机器),但是引用还是8个字节,2、引用常见的使用就是在于参数传递这里,函数调用的时候使用的和传值长相一样,但是在函数定义的时候我们要声明参数为引用。在函数体内使用该引用的时候也是与直接传值的使用方式一样。但是传引用比传值快,因为引用的底层也是使用指针执行。
佰无一用是书生
·
2023-06-15 23:43
C++
学习
C++学习之虚指针与虚表(动态绑定、多态)、this指针(
侯捷
老师)
1、classA有虚函数,因此会有虚指针,虚指针(virtualpointer)指向一个表即虚表,virtualtable,虚表中存放的都是函数指针,指向虚函数(非虚函数不用管)。注意,这里classB继承了A的func2(),因此B的虚表中指向func2()的函数指针和A的虚表的指针相同。对于C而言同理,指向func2()的函数指针和A、B的一样。2、静态绑定一定是通过call函数,调用某个特定
佰无一用是书生
·
2023-06-15 23:43
C++
c++
学习
开发语言
Buffer Pool(cmu15445 project1)
相较于之前难度上升了许多其中ExtendibleHashTable和LRU-KReplacementPolicy是作为bufferpool的组件使用的ExtendibleHashTable一开始没有认真就之间写了,用的手法还是
侯捷
老师讲的那个散列表方法
DyingLive
·
2023-06-14 22:36
c++
数据库
吐血整理C++书单,萌新到大牛,要看哪些书?
正如
侯捷
老师所说C++相关的书籍非常多,如天上繁星:广博如四库全书者有《TheC++ProgrammingLanguage》《C++Primer》深奥如山重水复者有《TheAnnotatedC++ReferenceManual
程序员爱分享
·
2023-06-11 14:05
资源推荐
经典计算机书籍
c++
编程语言
java
c语言
吐血整理C++书单,萌新到大牛,要看哪些书? | C++书单大全
正如
侯捷
老师所说C++相关的书籍非常多,如天上繁星:广博如四库全书者有《TheC++ProgrammingLanguage》《C++Primer》深奥如山重水复者有《TheAnnotatedC++ReferenceManual
编程指北
·
2023-06-11 14:02
程序员必知必会
计算机基础知识
c++
书籍
编程语言
java
c语言
什么是微软的 Application Framework?
一、知名杂志的说法首先我们看看
侯捷
在其《程序员》杂志上的无责任书评中是怎么说的:演化(evo
荔园微风
·
2023-06-10 07:01
Visual
Studio技术
microsoft
mfc
c++
windows
微软
深蓝学院 C++笔记 先导篇章 - 绪论
高性能解决问题二、C++推荐书目1.基础《C++Primer》,StanleyB.Lippman等著,王刚、杨巨峰等译2.进阶《EffectiveC++》,ScottMeyers著,
侯捷
译。
甜橙の学习笔记
·
2023-06-08 01:17
深蓝学院C++笔记
c++
开发语言
【游戏编程扯淡精粹】TinySTL源码阅读
【游戏编程扯淡精粹】TinySTL源码阅读
侯捷
先生在《漫谈程序员与编程》中讲到STL运用的三个档次:“会用STL,是一种档次。对STL原理有所了解,又是一个档次。追踪过STL源码,又是一个档次。
zoloypzuo
·
2023-06-07 00:32
游戏编程扯淡精粹
游戏
c++
开发语言
stl
C++、STL标准模板库和泛型编程 ——算法、迭代器 (
侯捷
)
C++、STL标准模板库和泛型编程——算法、迭代器(
侯捷
)---持续更新迭代器iterator_category算法accumulatefor_eachreplacecountfindsortbinary_search
期望上岸的鱼
·
2023-04-21 21:17
C++
c++
算法
开发语言
The C++ standard library(
侯捷
/孟岩 译) 01--pair/auto_ptr
1隐式的return0;(page21)C/C++中可以使用return来结束main(),但与C不同的是,C++在main()的末尾定义了一个隐式的return语句(即:return0;)。命名空间namespace(page23)namespace,指标识符的某种可见范围。使用C++标准程序库的任何标识符时,有3种选择:1.直接指定标志符:eg:std::ostream而不是ostream。完
Ewitter
·
2023-04-16 02:53
array 与 forward_list 深度探索
array与forward_list深度探索arrayforward_list声明:本文中所有图件都来自B站
侯捷
老师授课视频arrayarray的内部调用了内置数组,使用时必须std::array,比如
陈同学别睡啦
·
2023-04-14 08:50
STL源码解析
--
总结
list 深度探索
声明:本文中所有图件都来自B站
侯捷
老师授课视频list底层实现原理图1:容器list的实现代码和原理图(GNU2.9)STL中,list是一个环状双向链表,在list尾端加一个空白节点,实现前闭后开区间
陈同学别睡啦
·
2023-04-14 08:19
STL源码解析
--
总结
The C++ standard library(
侯捷
/孟岩 译) 11--Strings
11.string(p471)string::nposItequalstothemaximumvaluerepresentablebythetypesize_type.Theexactmeaningdependsoncontext,butitisgenerallyusedeitherasendofstringindicatorbythefunctionsthatexpectastringindex
Ewitter
·
2023-04-13 20:51
STL源码剖析-六大部件, 部件的关系,复杂度, 区间表示
C++标准库-体系结构与内核分析根据源代码来分析介绍自学C++
侯捷
老师的STL源码剖析的个人笔记,方便以后进行学习,查询。为什么要学STL?
null_one
·
2023-04-11 17:34
C++
c++
算法
开发语言
C++术语对照
以下是
侯捷
个人陆续收集整理的有关於我所涉猎的领域的术语对照(英中繁简)。欢迎所有朋友给我意见(任何意见)。谢谢。新书写作,或发表文章时,我会以此表为叁考。
mentat
·
2023-04-11 00:50
编程开发
c++
microsoft
class
exception
function
object
【C/C++】内存管理(一):shared_ptr
侯捷
在他的教程中提到:C++中一个classtype的对象可能有两种特殊的情况:像一个指针(pointer-likeclass,迭代器、智能指针),或者像
红衣主教冲不停
·
2023-04-07 04:17
c语言
c++
开发语言
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他