自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++ webrtc开发(非原生开发,linux上使用libdatachannel库)

使用c++开发webrtc在互联网上留下的资料甚少,经过我一段时间的探索,有大概这几种可以用于c++进行webrtc开发的方法。1.c++ webrtc native 开发,这个开发方法很麻烦,编译这个库十分麻烦,索性网上还留有部分资料可供参考,但是因为我是想在嵌入式上部署webrtc,所以没有考虑这个方法。

2024-04-16 15:59:16 1329 3

原创 C++显示转换

c++中显式转换有如下几种,static_cast, dynamic_cast, const_cast和reinterpret_cast提示:以下是本篇文章正文内容,下面案例可供参考。

2023-11-29 11:35:27 35 1

原创 c++类中的this

尽管this一般是指向类的类型,但也有例外,例如一个const 修饰的函数, 如果this是一个a* const类型的,那么显然是不能进行初始化的,因为我们不能用一个const 地址来初始化非指向const 的指针,因为非指向const的指针是能够对指针所指的内容进行修改的,这显然不合理,所以对于const函数中的this,他的类型为const a* const。这个对象,所以他是一个常量指针,即指针所指不能变,在这个例子中我们可以写为a* const this,const离谁更近代表谁不能变。

2023-11-28 11:21:58 71

原创 std::lock_guard的使用

std::lock_guard防止你忘记解锁锁,他会在std::lock_guard的对象生命期结束时自动解锁锁。

2023-10-20 20:15:48 188 1

原创 c++ typedef 相关语法

typedef就是为现有的数据类型起别名。提高代码的可读性,简化复杂数据结构。注意typedef要和define区别开,define是宏替换,编译的时候没有做相关检查,但typedef在编译时会做检查,且define常常是对常量进行替换,typedef是对数据类型进行替换。且typedef和define在顺序上也有一些区别。

2023-09-08 16:12:57 102 1

原创 完全二叉树的array表示式及其证明

Complete Binary tree完全二叉树是整颗binary tree除了除了最底层的叶节点之外,都是填满了的,并且最底层的叶节点由左至右又不存在空隙。这样我们就可以让第i个节点的左子节点的序号为2i,右子节点的序号为2i + 1,同样的,第i个节点的父节点为i/2。其中很重要的一点是我们的数组的0号位置是不存储东西的,我们的节点序号是从1开始的。所以第i个节点的左节点编号为 i + 2(i - 2。假设第i个节点的高度为:h(从0开始)在h层且处在i点左边的有 i - 2。- 1 - i个节点。

2023-07-10 11:23:49 55 1

原创 STL源码剖析之deque

之前我们学了stl中的内存分配器alloc,也学习了typetraits技巧,并且从vector和list的学习中对这两个技巧有了进一不的理解,现在我们要学deque,他本质上没有多难。

2023-07-09 22:04:51 92 1

原创 stl源码剖析list

list是数据结构中的双向链表,无需多言,懂的都懂!stl中的list封装了更多的功能,list相比vector,他的迭代器设计更符合一般认知。看看吧。

2023-06-30 10:25:41 87

原创 STL源码剖析vector

vector可以理解为一个动态数组,他能够自适应地变更自己的大小。总之就是很厉害。看看SGI vector的相关定义代码public ://通过模板推断 typedef T value_type;if(start!} public :} //size_type()这种是新时代的c++的强转,应该更潮更in size_type size() const {if(end()!++ finish;

2023-06-28 10:52:16 54 2

原创 tarjan干强连通分量(不含证明)

tarjan求强连通分量板子及注释板子题acwing1174.受欢迎的牛提示:这里对文章进行总结:例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

2023-06-11 20:48:10 28

原创 从零开始的STL源码剖析(迭代器概念与triats编程技法)

本章大致介绍了在C++本身限制下,利用一些手段获取STL中对于迭代器所指向对象类型,从而使代码的复用得到增强,当然也使STL容器和算法变得更为融洽。

2023-06-10 16:57:59 832

原创 STL源码剖析从零开始(空间配置器)

STL源码剖析空间配置器

2023-06-05 11:31:14 99 1

原创 最长上升子序列

我们在长为length的f数组进行查找,并且想要寻找到小于a[i]的最大尾数,二分可以实现,那么我们查找到的长度再+1的最小尾数就会被更新为当前值(分类讨论可证明,如果长度+1的序列尾数比当前值大,那么肯定能进行更新,如果相等,那么更新也无事发生,如果小于,那么它应该是会被二分到,这里没有二分到这个值说明这个值不会比当前值大),如果找不到最大尾数,那么说明当前数是最大的,他能更新f数组长度,新长度为length + 1。还有一点值得注意,我们的f[i]的最小值为1,因为至少有他一个。

2023-04-21 17:48:24 40 1

空空如也

空空如也

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

TA关注的人

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