- 博客(71)
- 收藏
- 关注
原创 通信自组网
http://www.mem.gov.cn/gk/zfxxgkpt/fdzdgknr/202408/W020240805624410019323.pdf
2025-06-04 08:30:55
366
原创 C++虚函数和纯虚函数
总结:纯虚函数之所以不能实例化,是因为它没有具体的实现,使得包含它的类成为抽象类。而抽象类的虚函数表不完整,缺少纯虚函数的地址,所以编译器会禁止其实例化,以此保证类型系统的安全性。在 C++ 里,纯虚函数是在基类中声明但没有具体实现的虚函数,其声明结尾用= 0表示。对于包含虚函数的类,编译器会为其创建虚函数表,这个表中存储着类成员函数的地址。// 这是一个纯虚函数。纯虚函数在虚函数表中对应的是一个未定义的条目,或者说是一个占位符。派生类必须实现基类中的所有纯虚函数,才能成为具体类,进而被实例化。
2025-06-04 08:30:22
296
原创 C++虚函数和纯虚函数
总结:纯虚函数之所以不能实例化,是因为它没有具体的实现,使得包含它的类成为抽象类。而抽象类的虚函数表不完整,缺少纯虚函数的地址,所以编译器会禁止其实例化,以此保证类型系统的安全性。在 C++ 里,纯虚函数是在基类中声明但没有具体实现的虚函数,其声明结尾用= 0表示。对于包含虚函数的类,编译器会为其创建虚函数表,这个表中存储着类成员函数的地址。// 这是一个纯虚函数。纯虚函数在虚函数表中对应的是一个未定义的条目,或者说是一个占位符。派生类必须实现基类中的所有纯虚函数,才能成为具体类,进而被实例化。
2025-06-04 08:29:46
226
原创 C++虚函数和纯虚函数
总结:纯虚函数之所以不能实例化,是因为它没有具体的实现,使得包含它的类成为抽象类。而抽象类的虚函数表不完整,缺少纯虚函数的地址,所以编译器会禁止其实例化,以此保证类型系统的安全性。在 C++ 里,纯虚函数是在基类中声明但没有具体实现的虚函数,其声明结尾用= 0表示。对于包含虚函数的类,编译器会为其创建虚函数表,这个表中存储着类成员函数的地址。// 这是一个纯虚函数。纯虚函数在虚函数表中对应的是一个未定义的条目,或者说是一个占位符。派生类必须实现基类中的所有纯虚函数,才能成为具体类,进而被实例化。
2025-05-26 22:07:29
367
原创 C++性能优化之访存优化(未完)
软件是使用预取指令或者内置函数,内置函数就是编译器自带的函数,_builtin_prefetch(void * addr, rw, locality);第一个采纳数是内存指针数据,第二个是读写,第三个预取数据的时间局部性,0-3,越大代表时间局部性越强。数据预取是一种提前为处理器准备数据机制,主要有硬件预取和软件预取。硬件是根据程序运行状态预测,硬件机制。
2025-05-14 11:18:45
272
原创 20250415学习
虚继承时构造函数的执行顺序与普通继承时不同:在最终派生类的构造函数调用列表中,不管各个构造函数出现的顺序如何,编译器总是先调用虚基类的构造函数,再按照出现的顺序调用其他的构造函数;C++ 代码中的大部分内容都是放在内存中的,例如定义的变量、创建的对象、字符串常量、函数形参、函数体本身、new或malloc()分配的内存等,这些内容都可以用&来获取地址,进而用指针指向它们。还有一些平时不太留意的临时数据,例如表达式的结果、函数的返回值等,它们可能会放在内存中,也可能会放在寄存器中。构造函数不能是虚函数。
2025-05-07 20:28:17
350
原创 C++多线程的性能优化
现代多核处理器环境下,线程池技术是提高程序并发性能的重要手段。本文解析一个采用工作窃取(Work Stealing)算法的高效线程池实现,通过详细代码分析和性能测试展示其优势。
2025-04-01 22:57:32
592
原创 协议学习——1 NCDSSB
上次面试NCDssb, 今天特意学习下,除了物理层的定义,其实再很多物理层的书上都有,主要是讲下RRC曾怎么玩的。配置在专用BWP上配置,切实BWP的专用部分。
2025-03-26 11:33:20
258
原创 数据结构与算法——数据结构4
使用线性表存储数据的方式可以这样理解,即“把所有数据用一根线儿串起来,再存储到物理空间中”。程序员没有稳定一说,目前学习数据结构,其实不难,最近在学习,系统性的总结下,便于后续复习和使用。二叉树的先序 中序 后序 以及基于广度的层次遍历。主要了解图的基本概念,深度优点搜索和广度优先搜索就行。还要知道链表反转,知道迭代法和递归法就可以【】这里没有基于数组的是,只用掌握一种就行了。在这些基础结构上知道栈和队列的实现。同时还要知道顺序表和链表的优缺点。对于树主要是掌握树的基本概念。知道霍夫曼树基本结构。
2025-03-14 18:13:29
291
原创 数据结构与算法——算法2 判断两个单链表是否相交及找到第一个交点
因为我们知道,若两个链表相交,则从第一个相交节点开始,后面的节点都相交。从头开始遍历第一个链表,遍历第一个链表的每个节点时,同时从头到尾遍历第二个链表,看是否有相同的节点,第一次找到相同的节点即第一个交点。因为两个链表中有一个共同节点,则这个节点里的指针域指向的下一个节点地址一样,所以下一个节点也会相交,依次类推。若两链表相交,则循环出栈,直到遇到两个出栈的节点不相同,则这个节点的后一个节点就是第一个相交的节点。如果两个单链表有共同的节点,那么从第一个共同节点开始,后面的节点都会重叠,直到链表结束。
2025-03-13 22:03:30
261
原创 数据结构与算法——算法1 单链表反转
3) 再退一层,此时 new_head 仍指向节点 4,而 head 退出一层后,指向的是节点 2。4)再退一层,此时 new_head 仍指向节点 4,而 head 退出一层后,指向的是节点 1。整个操作过程如图。2) 在此基础上,开始执行 17、18 行代码,整个操作过程如图 9 所示,最后将 new_head 的指向继续作为函数的返回值,传给上一层的 new_head。因此,当递归首次退出一层时,new_head 指向的是节点 4 ,而 head 由于退出一层,指向的是节点 3,如下图。
2025-03-13 21:52:08
213
原创 C++编译问题——1模板函数的实现必须在头文件中
模板函数的实现必须在头文件中,因为编译器在实例化模板时需要看到完整的实现。所以,你可以直接把 insert 函数的实现放在头文件里。假设你有一个头文件 SeqList.h 和一个源文件 SeqList.cpp。今天编译数据结构时,遇见一个编译错误。
2025-03-13 19:08:13
372
原创 性能优化——cache与cacheline
如下就是查看cpu信息最关心的是解释:这表明系统所采用的架构为 x86_64,也就是通常所说的 64 位架构。x86_64 架构是在 x86 架构基础上发展而来,支持 64 位的内存寻址和数据处理,相较于 32 位架构,它能够处理更大的内存空间和更复杂的计算任务。解释:说明 CPU 支持两种操作模式,即 32 位和 64 位。这意味着该 CPU 既可以运行 32 位的操作系统和应用程序,也可以运行 64 位的操作系统和应用程序,具有较好的兼容性。
2025-02-27 17:46:34
967
原创 NR实战-调度不满问题
理论可行:理论上,K1 配置为 1 意味着 PDSCH(物理下行共享信道)传输结束后,终端能很快反馈 HARQ(混合自动重传请求)信息,这样可以减少反馈时延,在对时延要求极高的场景下有一定优势,比如某些低时延通信业务。在 3GPP 的 5G NR 协议里,对于 DCI(下行控制信息)格式 1_0,K1 的定时指示符可直接映射到值集合 {1, 2, 3, 4, 5, 6, 7, 8} ,这表明从协议角度,K1 能够被配置为 1。基站配置K1时,除了考虑处理时间和干扰,还需考虑哪些因素?
2025-02-12 18:33:35
300
原创 结合实际讲NR系列3—— SSB corset0 的位置
但这些信息不足以让UE进一步进行随机接入,所以UE还需要继续接收Sib1信息,Sib1信息通过PDCCH的DCI 1-0调度,在PDSCH中传输。具体的CORESET0和SS0信息,是通过MIB中的pdcch_ConfigSib1中的高4bit和低4bit查表可得。具体用那种模式MIB中的pdcch-configSib1的高四位去查表所得表13-1到13-10 中的某一行的索引,可以得到corset的大小符号数 以及相比于SSB的rb偏移。SSB的子载波0与SSB子载波所在CRB的子载波0偏移K。
2025-02-10 16:34:05
278
原创 数学基础知识 1----随机变量过程
协方差矩阵在主成分分析降维分析使用非常多,很多公式推导都用到一些性质,比如y=ax+b与 x的协方差计算等。
2025-01-23 20:41:40
220
原创 机器学习9-概率图模型
贝叶斯网络(Bayesian network),又称信念网络(Belief Network),或有向无环图模型(directed acyclic graphical model),是一种概率图模型,于1985年由Judea Pearl首先提出。它是一种模拟人类推理过程中因果关系的不确定性处理模型,其网络拓朴结构是一个有向无环图(DAG)。贝叶斯网络的有向无环图中的节点表示随机变量{X1,…,XN它们可以是可观察到的变量,或隐变量、未知参数等。认为有因果关系(或非条件独立)的变量或命题则用箭头来连接。
2024-12-04 18:22:21
864
原创 机器学习7-AdaBoost算法
下文是基于李航的统计方法写的博客,主要理论加举例比较容易理解,这块其实不难,但是搞了很多概念,容易让人看的迷糊,结合例子看容易理解。同时可以观看B站的这块讲解。
2024-12-02 15:40:22
299
原创 机器学习6-梯度下降法
这得从梯度下降更新得角度去考虑如果损失函数加上正则项,那么导函数就等于多了正则项的导函数,即原来比如 MSE的导函数和 L1、L2 的导函数,那么梯度 gradient 就是这两部分组成,每次减小的幅度就是学习率η×(MSE 的导+L1/L2 的导),说白了就是比不加惩罚项要多更新一部分,这部分就。梯度下降法的基本思想可以类比为一个下山的过程,如下图所示函数看似为一片山林,红色的是山林的高点,蓝色的为山林的低点,蓝色的颜色越深,地理位置越低,则图中有一个低点,一个最低点。真正工作中我们是奔着过。
2024-11-28 17:10:30
1077
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人