- 博客(50)
- 收藏
- 关注
原创 1、常用的数据库、表操作
查看全部数据库# 查看数据库db# 创建数据库db# 删除数据库dbuse db;# 使用数据库db基本的数据库拷贝# 可利用相似操作拷贝所有数据库和特定表mysqldump -u cpp -p olduser > olduser.sql # linux终端导出cpp用户下的olduser数据库# 建一个新数据库newuser。
2024-09-10 23:49:29
659
1
原创 8、值、指针、引用作为参数或返回值
时,那么指针指向的内容在堆区,出栈不会销毁,不会导致悬空指针,这时受益于指针复制开销小,使用指针作为返回值还是比较合适。地址传递复制开销为8字节,引用无复制,所以这两种方式在传递数组,字符串及自定义类型等。,因为无需复制对象,所以返回复制开销大的对象就非常适用了。也可做到),又因其复制开销大,基本就用于返回基本类型。另外,引用使用起来比指针简单,所以尽量用引用。考虑到值传递会进行复制操作,所以如果参数是。,其复制开销较小时可以考虑使用,但还是。时可使用,但更常用的应该是使用。,确保不能修改,修改时会报错。
2024-09-10 22:59:19
524
原创 7、内存分配函数用法
用于分配指定大小的内存块,并返回指向该内存块的指针。用于分配指定数量的元素,每个元素的大小为指定字节,并。用于动态分配内存,并调用对象的构造函数。在已经分配好的内存上构造对象。
2024-09-09 00:29:15
289
原创 5、const修饰类型和变量
的是const就是常量指针(constant pointer)(顶层指针);是*就是指针常量(pointer-to-constant pointer)(底层指针).指针常量这个翻译真迷惑人,这里的指针应该想表示指向吧,但翻译成常指向指针不好嘛。,所以常量指针为顶层指针。
2024-09-07 14:23:40
507
原创 3、C++常用宏
我们可以根据打印的信息大致确定那个区间有问题(有文件名和行数可快速定位),然后再设置断点进行gdb调试。而且在关键代码处设置输出信息,也很方便看出代码如何运行,在阅读项目代码时也很方便。这是C++的一些常用宏,常用于调试和错误信息的输出。
2024-09-06 17:53:36
292
原创 linux安装配置nginx
(2)再将一个客户端连接到nginx代理,9528服务器响应。接下来再开一个客户端,9527服务器响应了。确实是以Round-Robin(轮询)方式进行负载均衡,和配置预想一致。(1)开启两个服务器127.0.0.1:9527和127.0.0.1:9528,客户端连接到nginx代理127.0.0.1:9000,9527服务器响应。在nginx.conf输入以下内容以配置tcp负载均衡。
2024-09-05 11:42:14
775
原创 Ubuntu安装boost,protobuf、moduo
muduo库是基于boost开发的,确保先安装了boost(对boost版本有要求),还需要先安装protobufcurl库。
2024-09-02 16:36:19
489
原创 6、new、delete、malloc、free底层原理
二、C++内存函数底层原理1、new运算符与delete运算符(1)new运算符上述代码,分配了一个Complex对象大小的空间,并让p指针指向这块空间。编译器会将它转化为以下代码。可见,当我们时,会经过以下步骤。上述代码,释放了new分配的空间。编译器会自动转换为以下代码。用delete释放了new分配的空间包括以下步骤。(3)new、array new、replacement new
2024-07-20 14:56:16
290
原创 VMware安装Ubuntu以及利用vscode远程Ubuntu
(1)VMware安装Ubuntu主要参考此文。(2)VMware密钥参考此文,我用了。(3)VMware中Ubuntu的。
2024-07-12 22:18:40
781
原创 Git基本操作
但是我们仍然不可以把提交到本地仓库的内容推到远程仓库中。如果所有计算机都可以向你的远程仓库中提交内容,那你的仓库不就乱了吗,所以Github一般会使用SSH key进行授权。上述操作都是在默认生成的master分支上进行的,但是,一般情况下,我们并不会轻易在master分支上进行操作。在以下过程中,我们先创建了一个a分支,然后将当前分支切换为a分支,我们查看当前分支可以看到,当前分支为a分支。此时可以看到master分支的内容变为将a分支下提交的内容。,将a分支下提交的内容推到远程仓库。
2024-06-02 21:55:59
558
原创 二叉树遍历
根据之前的结论,我们知道每棵树都可以按照孩子-兄弟表示法对应的写出其二叉树结构,所以,我们接下来重点研究二叉树的存储及相关操作。二叉树:(1)每个结点的孩子结点数目(度)不超过2;(2)子树有左右之分,属于有序树。
2024-05-07 20:24:19
668
1
原创 一、计算机的抽象与技术
计算机的每一层都为上一层隐藏了自己的技术实现——抽象。抽象的好处就是隐藏了低层的实现细节,简化了上层的使用。比如说,应用软件并不会直接访问硬件来实现自己的功能,而是通过系统软件提供的接口访问硬件。典型的系统软件有以下几个:操作系统、编译器和汇编器。
2024-04-30 22:00:01
264
原创 关联式容器查询表—集合(set)、映射(map)
和关键字对应,它们的类型可以不同。map是一种关联式容器,它是用来存数据的,数据的组成包括两部分:数据值和关键字。map容器中不允许相同的关键字出现,因此在插入新元素前要检查关键字是否已经存在。查找p中是否有关键字为zhao的元素,有就返回元素的迭代器,统计关键字为zhao的元素个数,找到了返回1,没找到返回0.返回大于等于30的第一个元素的迭代器,即30的迭代器。返回大于40的第一个元素的迭代器,即50的迭代器。在集合中找到i则返回它的迭代器位置,否则返回。在集合中找到元素10则返回1,否则返回0.
2024-04-15 20:50:13
807
原创 容器适配器查询表—栈(stack)、队列(queue)
stack是利用类模板vector、deque或list实现的适配器,基本操作有。他允许在容器一端进行插入,另一端进行删除。stack是利用类模板deque实现的适配器,基本操作有。调用顺序容器的push_back()实现。插入和删除元素的末端叫做。调用顺序容器的pop_back()实现。调用顺序容器的back()实现。,删除元素的一端叫做。队列为空返回true。
2024-04-15 16:11:31
468
原创 顺序类容器查询表-串(string)、数组(vector,deque)、链表(list)
v.back()返回最后一个元素d.back()返回最后一个元素L.back()返回最后一个元素。
2024-04-15 01:29:55
868
原创 数据结构基础
数据元素是组成数据的基本单位(也叫结点,记录)。一个数据元素由若干数据项组成。以下表为例,每一行都代表一个数据元素,每一行又有许多数据元素组成。数据就是由一个个数据元素组成的。
2024-04-09 19:51:33
319
原创 C++类和对象(二)
作用:指向成员函数所作用的对象。非静态成员函数中可以使用this指针指向函数作用的对象的指针。静态成员成员函数中不能this指针,因为静态成员函数并不具体作用于某个对象。所以静态成员函数的参数个数就是实际参数个数,非静态成员函数实际参数个数会比原来多一个this指针。
2024-04-04 14:47:01
244
原创 C++类和对象(一)
实例化对象所占用的内存空间的大小等于所有成员变量的大小。不包括成员函数。//定义矩形类public://属性double l,w;//长宽//行为(求面积、周长)return l*w;//必须加分号//实例化public:double l,w;//类内只写声明//添加作用域,类外写定义return l*w;一定加&public:private:l=c.l;w=c.wint main()//调用编译器自动生成的默认构造//调用自己写的拷贝构造。
2024-04-04 12:19:14
448
原创 C++动态内存分配
(1)分配一个变量语法:T*类型的指针P = new 类型T;含义:动态分配出一片大小为sizeof(T)字节的内存空间,并且将该内存空间的起始地址赋值给P。(2)分配一个数组语法:T*类型的指针P = new T[N];含义:动态分配出一片大小为N*sizeof(T)字节的内存空间,并且将该内存空间的起始地址赋值给P,数组名就是数组的起始地址,相当于一个P[N]数组。
2024-04-03 15:57:42
454
1
原创 const
不可以通过常量指针修改其指向的内容。指向可以变。不能把常量指针赋值给非常量指针,反过来可以。int m,n;int* p1;*p = 5;//错,不可以通过常量指针修改其指向的内容。n = 5;//正确p = &m;//正确,常量指针的指向可以变p = p1;//正确p1 = p;//错误,不能把常量指针赋值给非常量指针常量指针做函数参数,可避免函数内部不小心修改指针所指向的内容。*a = 4;//报错。
2024-04-03 15:36:54
201
1
原创 C++(一)
我们把可以通过基本类型、const修饰符和声明运算符构造出来的类型成为内置类型。这些内置类型能直接有效地展现出传统计算机硬件的特性,但不能提供高级应用程序的上层特性。为了弥补这一点,C++提供了一套成熟的抽象机制,目的是为了让程序员设计并实现自己的数据类型这些类型具有恰当的形式和操作。我们把利用C++抽象机制构建的新类型成为用户自定义类型,如结构体,枚举,类。
2024-04-02 11:33:17
293
1
原创 ISAC优化
当C&R需要不同的波束时,可以优化预编码矩阵。基本优化公式如下:其中是目标函数。定义目标函数和约束可以有多种方法和组合。每个可以单独用于通信或传感,也可以用于加权联合功能。
2024-03-15 15:39:29
784
1
原创 波束空间信道模型
分别表示由于发送器和接收器之间可能未锁定的时钟而导致的潜在时变定时偏移和载波频率偏移 (CFO)。我们考虑一个具有 Q ≥ 2 个节点的通用系统,每个节点都有一个均匀的线性天线阵列(ULA)。分别是发射机和接收机中的波束成形矢量,并且假定 AoA 和 AoD 相同。假设信号传播中存在平面波前。对于雷达和收发器在同一位置的基站一般认为时钟同步,不存在CFO。对于DFRC系统,感知接收器处的无噪声时域回波信号可以表示为。对于一般的单载波 MIMO 系统,我们可以将发射机在时间。处的基带信号向量表示为。
2024-03-15 11:29:57
703
1
原创 latex论文提交格式问题及解决方案记录
bottommargins: The bottom margin is 0.92 in on pages 1, 3, 4 and 5, which is below the required margin of 1 in. 这是第1,3,4,5页下方空白太小造成。(1)topmargins: The top margin is 0.61 in on page 4, which is below the required margin of 0.75 in. 这是第四页上方空白太小造成的。
2024-01-26 09:30:05
2127
2
翻译 On Integrated Sensing and Communication Waveforms With Tunable PAPR
因此,6G 网络的一项重要支持技术是双功能雷达和通信 (DFRC),它不仅受益于共享频谱和功率效率,还受益于集成传感和通信 (ISAC) 共享波形的硬件效率。本文考虑具有可调谐 PAPR 的ISAC 波形设计,目标是在PAPR约束和雷达线性调频信号的给定相似性约束下最小化所有通信用户的多用户干扰(MUI),采用ADMM算法。作者利用多目标优化(MOOP)得到了MUI和波形相似性的折衷,然后通过ADMM求解了优化问题从而验证了所提出的ISAC波形的优越性,同时也考虑了雷达和通信性能的折衷。
2023-12-06 16:39:43
171
1
翻译 RIS-Assisted Communication Radar Coexistence:Joint Beamforming Design and Analysis
未来无线通信系统需要更高的数据传输率和和智能感知服务,这就对频谱资源提出了更高的需求。一方面,我们可以将频谱向高频拓展。另一方面,在多个系统之间实现频谱共享。由于雷达和通信系统在硬件、信号处理等许多方面的相似性,ISAC被提出来。ISAC有两个层面,低层面来说,就是只共享频谱,对应的系统是通信雷达共存系统,研究难点是互干扰管理;更高层面就是不仅共享频谱,还共享设备,也就是双功能雷达通信系统(DFRC),研究难点是ISAC波形的设计。
2023-11-28 21:46:38
399
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人