![](https://img-blog.csdnimg.cn/direct/d5e3a83253a2466982e5cf3d951570ce.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
c++专栏
文章平均质量分 88
c++初阶到高阶的学习博客专栏
HuaJiahhh
这个作者很懒,什么都没留下…
展开
-
特殊类的设计
目录1. 设计一个不能被拷贝的类2. 设计一个只能在堆上创建的类3. 设计一个只能在栈上创建的类4. 设计一个不能被继承的类5. 单例模式(设计一个类只创建一个对象)1. 设计一个不能被拷贝的类拷贝只会出现在拷贝构造函数和赋值重载函数里面; 想要防止拷贝就要从这两个函数入手.有c++98和c++11两种处理方法:c++98直接将这两个函数变成私有成员(外部无法使用)的并且只声明不定义(防止内部拷贝);c++11是不是有个关键字delete.class Non原创 2024-04-26 09:18:30 · 240 阅读 · 0 评论 -
c++异常详解
return str;private:throw SqlExecption("权限不足", 100, "select * from name = '张三'");throw CacheException("权限不足", 100);原创 2024-04-24 21:15:46 · 720 阅读 · 0 评论 -
红黑树封装map和set超详解
这篇博客完全是根据上篇博客红黑树来扩展的,代码的修改也是在红黑树那篇,大家可以先看看那篇代码再过来看看这篇更好食用哦!目录1.红黑树迭代器代码2.红黑树的insert代码3.map和set的封装4.最后代码总和5.最终测试1.红黑树迭代器代码将代码分成这几个.h / .cpp文件;原创 2024-04-18 19:48:02 · 635 阅读 · 2 评论 -
哈希表详解
还有就是已经遍历完了一个桶,那么就要找下一个桶. 然后前面传hashi就是这个用的, 找到哈希下标, 如果结点挂链表就赋给node, 直到遍历完还没有就nullptr;的, 但是负载因子如果太大,就很容易冲突加剧, 效率就低, 负载因子太小冲突降低但是空间利用率就低了.所以合适的负载因子很重要,一般设置为。: 当发生哈希冲突的时候, 如果哈希表没有满,那么就还有可以存放数据的位置,就将这个数据放到冲突位置的下一个空位置即可.插入数据: 先使用哈希函数找到下标,然后判断状态为非exist,最后插入数据即可.原创 2024-04-22 21:31:29 · 785 阅读 · 2 评论 -
红黑树详解
红黑树是一个搜索二叉树,给结点进行添加颜色(红色和黑色);对给条路径的结点进行颜色的限制,达到每条路径不会超过其他路径的两倍。红黑树是一种相对平衡的搜索二叉树。原创 2024-04-15 21:35:29 · 635 阅读 · 1 评论 -
AVL树详解
对于有序或者接近有序的二叉搜索树可能退化成为单支树,那么查找的效率就会和再顺序表中查找一样了,为了解决这个,就在二叉搜索树插入数据的时候要求左右子树的高度差的绝对值不能超过1。parent的左结点( subL) 作为根结点,subL的右结点(subLR)做为parent的左结点。parent作为subL的右边结点。(2)如果父亲结点的bf为-1、1,那么父亲所在的子树的高度一定发生了变化,就要向上进行更新。(3)如果父亲结点的bf为-2、2,那么父亲所在的子树违法了规则,需要进行调整(旋转)。原创 2024-03-13 21:55:26 · 764 阅读 · 0 评论 -
哈希应用(详解)
在中,并且数据都不重复, 那么要使用其他的方法, 不仅会消耗很大的内存, 并且效率非常之低下. 那么就是可以采用(是否存在).原创 2024-04-24 12:17:01 · 904 阅读 · 0 评论 -
数据的存储详解
例如: int: [0 ~ 2^15-1][-2^15 ~ -1] = [0 ~ 32,767] [-32,768 ~ -1];输出就是9, 8, 7, 6, 5, 4, 3, 2, 1, 4294967295, 4294967294....所以*pFloat解读出来就是0000 0000 0000 0000 0000 0000 0000 1001;9的补码就是: 0000 0000 0000 0000 0000 0000 0000 1001。(4)E全为1: M如果为0,则是+/-无穷大.原创 2024-04-27 17:21:27 · 576 阅读 · 0 评论 -
c++11详解
的类型使用初始化列表, 可以加。原创 2024-04-25 20:49:52 · 864 阅读 · 0 评论