- 博客(13)
- 收藏
- 关注
原创 C++ webrtc开发(非原生开发,linux上使用libdatachannel库)
使用c++开发webrtc在互联网上留下的资料甚少,经过我一段时间的探索,有大概这几种可以用于c++进行webrtc开发的方法。1.c++ webrtc native 开发,这个开发方法很麻烦,编译这个库十分麻烦,索性网上还留有部分资料可供参考,但是因为我是想在嵌入式上部署webrtc,所以没有考虑这个方法。
2024-04-16 15:59:16
2311
3
原创 C++显示转换
c++中显式转换有如下几种,static_cast, dynamic_cast, const_cast和reinterpret_cast提示:以下是本篇文章正文内容,下面案例可供参考。
2023-11-29 11:35:27
58
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
103
原创 std::lock_guard的使用
std::lock_guard防止你忘记解锁锁,他会在std::lock_guard的对象生命期结束时自动解锁锁。
2023-10-20 20:15:48
217
1
原创 c++ typedef 相关语法
typedef就是为现有的数据类型起别名。提高代码的可读性,简化复杂数据结构。注意typedef要和define区别开,define是宏替换,编译的时候没有做相关检查,但typedef在编译时会做检查,且define常常是对常量进行替换,typedef是对数据类型进行替换。且typedef和define在顺序上也有一些区别。
2023-09-08 16:12:57
149
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
66
1
原创 STL源码剖析之deque
之前我们学了stl中的内存分配器alloc,也学习了typetraits技巧,并且从vector和list的学习中对这两个技巧有了进一不的理解,现在我们要学deque,他本质上没有多难。
2023-07-09 22:04:51
139
1
原创 stl源码剖析list
list是数据结构中的双向链表,无需多言,懂的都懂!stl中的list封装了更多的功能,list相比vector,他的迭代器设计更符合一般认知。看看吧。
2023-06-30 10:25:41
131
原创 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
128
2
原创 tarjan干强连通分量(不含证明)
tarjan求强连通分量板子及注释板子题acwing1174.受欢迎的牛提示:这里对文章进行总结:例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
2023-06-11 20:48:10
35
原创 从零开始的STL源码剖析(迭代器概念与triats编程技法)
本章大致介绍了在C++本身限制下,利用一些手段获取STL中对于迭代器所指向对象类型,从而使代码的复用得到增强,当然也使STL容器和算法变得更为融洽。
2023-06-10 16:57:59
861
原创 最长上升子序列
我们在长为length的f数组进行查找,并且想要寻找到小于a[i]的最大尾数,二分可以实现,那么我们查找到的长度再+1的最小尾数就会被更新为当前值(分类讨论可证明,如果长度+1的序列尾数比当前值大,那么肯定能进行更新,如果相等,那么更新也无事发生,如果小于,那么它应该是会被二分到,这里没有二分到这个值说明这个值不会比当前值大),如果找不到最大尾数,那么说明当前数是最大的,他能更新f数组长度,新长度为length + 1。还有一点值得注意,我们的f[i]的最小值为1,因为至少有他一个。
2023-04-21 17:48:24
65
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人